@hacksmith/doraval
v0.6.37
Published
Make agent context work on every try. Context effectiveness toolkit for coding agents (skills, plugins, rules) across Claude, Cursor, Codex, Copilot, and Grok.
Downloads
3,284
Maintainers
Readme
doraval
Context-effectiveness CLI for coding agents. It reviews skills, rules, and memory so Claude, Cursor, Codex, Copilot, and Grok work from context you can trust.
dora and doraval are the same binary. Pronunciation: dor-uh-val (Doraemon + eval).
Installation
npm install -g @hacksmith/doraval# macOS
brew tap saif-shines/tap && brew trust saif-shines/tap && brew install doraval
# Bun
bun add -g @hacksmith/doravalNode ≥ 14.18. Alpine/musl: use Bun. See the installation guide.
Quick start
npx skills add saif-shines/doraval
dora review --quickThat add installs four skills: ask-dora, review-with-dora, grilling-for-routine, and writing-for-routine. Type /ask-dora for a Dora job or a routine idea.
/ask-dora turn this loop-able check into a routine--quick is structure and heuristics only. No Judge. No API key.
You get a Review with Findings. Exit 0 clean · 1 issues · 2 could not run.
Roadmap
Public board: Roadmap.
Commands
dora # short --help
dora review --quick . # first job; Findings; no LLM
dora review --quick --json
dora scan # workspace map
dora fix . --yes # mechanical; no TTY
dora fix . --brief # Judgment items; then replace
dora skill new --for claude --name review-pr --yes
dora skill unused # unused Skills in this directory
dora skill unused --global # unused home Skills; Sessions from every project
dora skill remove ghost --yes
dora memory add "Never use default exports" --weight 8
dora conflicts --dry-run
dora session
dora session show <id> # short table id is enough if unique
dora harness # list routines
dora harness new # start ask-dora / grilling-for-routine; optional Fixed step
dora harness apply <slug> # push the folder onto the Runtime job; Runtime watch
dora harness boot <slug> # alias of apply
dora harness show <slug> # one card
dora harness logs <slug> # that job's run history
dora harness pause <slug> # Runtime watch
dora harness resume <slug> # Runtime watch
dora harness list # Runtime watch: hermes cron list, hermes cron runs, hermes logs, hermes dashboard
dora harness rm <slug> # stop the job, then delete the folder
dora harness open <slug> # open the routine folder
dora config setup
dora probe --yes # hello / ack with doraval.dev
dora --help # first loop
dora --help --json # live mapLog in at doraval.dev/account, mint a key, then dora config set identity.api_key <token> --yes before dora probe --yes. Walkthrough: Connect the CLI.
More: doraval.dev/commands.
Building from source
Requirements:
- Bun ≥ 1.3
- Node ≥ 14.18 for the published binary target
bun install
bun run dev -- --help # run CLI from source
bun run build # emit bin/doraval.jsRepository layout
| Path | Contents |
|------|----------|
| src/cli/ | citty CLI surface (dora / doraval) |
| src/core/ | Scan, review, fix, memory, sessions, scaffold |
| src/providers/ | Packaging / provider specs (dora skill new, dora plugin bump) |
| skills/ | ask-dora, review-with-dora, grilling-for-routine, writing-for-routine |
| apps/website/ | Docs site (Blume) |
| scripts/ | Release, platform packages, publish helpers |
| test/ | Fixtures and CLI tests |
| bin/ | Built CLI entry (doraval.cjs) |
Development
bun install
bun run dev -- --help # run from source
bun test # unit + CLI tests
bun run typecheck
bun run build # emit bin/doraval.jsSee CONTRIBUTING.md and AGENTS.md for conventions (ponytail ladder, no version bumps unless releasing).
Contributing
Issues and PRs are welcome. See CONTRIBUTING.md.
License
MIT. See package.json ("license": "MIT").
