https://github.com/cevr/counsel
Route a prompt from Claude to Codex or from Codex to Claude
https://github.com/cevr/counsel
Last synced: 3 months ago
JSON representation
Route a prompt from Claude to Codex or from Codex to Claude
- Host: GitHub
- URL: https://github.com/cevr/counsel
- Owner: cevr
- Created: 2026-03-09T01:36:24.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-03-10T23:09:43.000Z (3 months ago)
- Last Synced: 2026-03-11T04:33:10.948Z (3 months ago)
- Language: TypeScript
- Size: 64.5 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Agents: AGENTS.md
Awesome Lists containing this project
README
# counsel
One command. Opposite agent only.
If you are in Claude, `counsel` routes to Codex. If you are in Codex, it routes to Claude.
## Install
```bash
bun install
bun run build
bin/counsel --help
```
For local PATH wiring during development:
```bash
bun run link
```
## Usage
```bash
counsel "Review src/auth for regression risk"
counsel --deep "Challenge this migration plan"
counsel --from claude -f prompt.md
echo "Trace the data flow in src/" | counsel
```
Flags: `-f/--file`, `--from`, `--deep`, `-o/--output-dir`, `--dry-run`, `-V/--version`
## Output
`counsel` prints the preview or result payload to stdout.
Each run writes:
```text
/tmp/counsel//
├── prompt.md
├── claude.md or codex.md
└── claude.stderr or codex.stderr
```
## Requirements
- `claude` on `PATH` for Claude targets
- `codex` on `PATH` for Codex targets
- Auto-detection via `CLAUDE_CODE`, `CLAUDE_CODE_ENTRYPOINT`, `CODEX_THREAD_ID`, or `CODEX_CI`
If detection is ambiguous, pass `--from`.
## Skill
Repo skill lives in `skills/counsel/`.
## Development
```bash
bun run gate
```