Reference

CLI Reference

36 commands, 13 stack profiles, 3 hooks, 9 MCP servers, 8 AI adapters. Everything you need to configure, extend, and debug Tasuki.

Quick start
$ npm install -g tasuki Installed tasuki v1.0.0   $ cd your-project $ tasuki onboard . Phase 1: Scanning stack... ✓ FastAPI detected (from app/main.py) ✓ PostgreSQL (from requirements.txt: psycopg2) ✓ React + TypeScript (from package.json) Phase 2: 13 profiles evaluated → fastapi-react selected Phase 3: Rendering 9 agents + 3 hooks... Phase 5: Initializing knowledge graph (15 nodes)... Phase 7: Generating CLAUDE.md adapter... ✓ Done in 8s · $0.00 · Talk to Claude Code normally.
Setup & Onboarding
tasuki onboard [path] [--target=claude|cursor|codex] [--skip-interview] scan & configure
Scans your project with 5 bash detectors (zero API calls, $0), matches to a stack profile, generates .tasuki/, initializes the knowledge graph, and translates to your target AI tool. Takes ~10 seconds.
$ tasuki onboard . --target=cursor
✓ Cursor adapter generated (.cursor/rules/)
tasuki init [--minimal] create .tasuki/ structure
Creates the bare .tasuki/ directory structure without scanning. Use when you want to manually configure agents. --minimal creates only essential files.
tasuki doctor validate configuration
Checks all generated files for validity: JSON syntax, no unresolved {{PLACEHOLDERS}}, agent frontmatter parseable, hooks executable, capability map consistent.
$ tasuki doctor
✓ 9 agents valid
✓ 3 hooks executable
⚠ project-facts.md: 2 unverified paths
tasuki status show current config
Displays current configuration: active mode, detected stack, installed agents, active hooks, memory vault summary.
$ tasuki status
Mode: standard · Target: claude
Stack: FastAPI + PostgreSQL + React
Agents: 9 active · Hooks: 3 · Memory: 34 nodes
Execution Mode
tasuki mode <fast|standard|serious> set pipeline depth
Sets the execution mode written to CLAUDE.md. fast: 3 agents, ~$0.26, small bugs. standard: 6 agents, ~$0.68, new features. serious: all 9 agents, RAG mandatory, full retries.
$ tasuki mode standard
✓ Mode set to standard (6 agents, ~$0.68/task)
Plugin System
tasuki install mcp <name> add MCP server
Installs an MCP server and wires it into the appropriate pipeline stages and agents. Shows you exactly which stages and agents the MCP connects to before confirming.
$ tasuki install mcp playwright
→ Stage 2 (QA E2E testing)
→ Stage 5 (Frontend visual regression)
→ Agents: qa, frontend-dev
✓ Installed. Add to CLAUDE.md MCP list to activate.
tasuki install agent <name> [--from=url] add custom agent
Installs a custom agent into .tasuki/agents/ and regenerates the capability map. The Planner will automatically see and route tasks to the new agent on the next pipeline run.
$ tasuki install agent mobile-dev
✓ Agent installed · capability-map.yaml updated
Planner will now route mobile tasks to mobile-dev
tasuki install skill <name> add skill / slash command
Installs a skill into .tasuki/skills/ and exposes it as a /command in your AI tool. Skills can be auto-triggered in specific pipeline stages or invoked manually.
tasuki adapt <claude|cursor|codex|copilot|windsurf|continue|roo|gemini> generate AI tool config
Translates .tasuki/ to the target AI tool's format. Can be run after onboarding to add support for a second tool, or after any agent/rule changes.
$ tasuki adapt cursor
✓ .cursor/rules/ generated (9 agent rules)
✓ .cursor/mcp.json updated
Memory Vault
tasuki vault sync sync vault to SQLite index
Reads all files in memory-vault/, parses wikilinks, indexes content into local SQLite for vector search. Run after manually editing vault files.
$ tasuki vault sync
Indexed 34 nodes · 128 edges · 2.3s
✓ SQLite index updated
tasuki vault query "<query>" [--agent=name] semantic search the vault
Runs a semantic query over the local SQLite index. Returns top matching nodes with relevance scores. Use --agent to filter by agent tag.
$ tasuki vault query "how do we handle auth" --agent=backend-dev
→ routers/auth.py (0.94) · models/user.py (0.91)
→ plans/jwt-auth/prd.md (0.87)
→ heuristics/never-trust-client-input.md (0.82)
tasuki error "<description>" --agent=name record a "do not" mistake
Creates an error memory node AND adds it to project-facts.md's "Do NOT" section. Every run of the specified agent will see this before starting.
$ tasuki error "Used print() instead of logger" --agent=backend-dev
✓ memory-vault/errors/used-print-instead-of-logger.md created
✓ project-facts.md "Do NOT" section updated
tasuki vault dashboard open interactive graph in browser
Opens a D3.js force-directed graph of the memory vault in your browser. Node colors by type. Click to highlight connections. Each panel shows the raw file content.
Utility & Hotfix
tasuki score [path] evaluate codebase quality
Runs a quick quality audit: test coverage proxy, security pattern scan, hook compliance check, memory vault health. Returns a score out of 100.
$ tasuki score .
Tests: 78/100 · Security: 92/100 · Memory: 85/100
Overall: 84/100
tasuki export [--format=json|yaml|md] export full config
Exports the complete Tasuki configuration (agents, hooks, facts, capability map) as a portable file. Use for team sharing or backup.
tasuki cleanup [--dry-run] remove unused agents for this stack
Removes agents not applicable to the detected stack. A pure backend project doesn't need a frontend agent. Use --dry-run to preview what would be removed. Cleanup is user-driven — Tasuki never auto-removes.

Auto-detection

13 stack profiles.
Zero configuration.

Detection runs entirely in bash — no API calls. Reads actual imports, package files, and directory structure. Not guessing.

FastAPI
from fastapi import in py files
fastapi in requirements.txt
Alembic migrations detected
Django
django.db.models imports
manage.py + settings.py
Django migrations directory
Flask
from flask import Flask
flask in requirements.txt
Flask-Migrate or raw SQL
Next.js
next in package.json
app/ or pages/ directory
next.config.js present
SvelteKit
@sveltejs/kit in package.json
svelte.config.js
src/routes/ directory
Nuxt
nuxt in package.json
nuxt.config.ts
pages/ or app.vue
Express
express in package.json
app.listen( in JS/TS
Sequelize or Knex detected
NestJS
@nestjs/core in package.json
@Module decorators
TypeORM or Prisma migrations
Rails
rails in Gemfile
config/routes.rb
db/migrate/ directory
Gin (Go)
gin-gonic/gin in go.mod
gin.Default() in Go files
GORM migrations detected
Spring Boot
spring-boot in pom.xml
@SpringBootApplication
Flyway or Liquibase migrations
Laravel
laravel/framework in composer.json
artisan file present
database/migrations/
Generic
No specific framework detected
All 9 agents still configured
No stack-specific migration patterns

Enforcement hooks

Three hooks.
Not advisory rules.

Hooks intercept every Write/Edit call via PreToolUse. Exit code 2 blocks the action. No bypass, no workaround.

🛡
tdd-guard.sh
PreToolUse: Edit | Write → exit 2 if no test file
Maps the implementation file being edited to its expected test file. If the test file doesn't exist, the edit is blocked with exit code 2. Forces TDD — you cannot write implementation without tests existing first.
File → test mapping:
app/routers/users.py
→ tests/test_users.py
src/components/UserCard.tsx
→ src/components/UserCard.test.tsx
services/payment.go
→ services/payment_test.go
app/models/user.rb
→ spec/models/user_spec.rb
Exceptions (never blocked):
config files migrations test files Dockerfile .tasuki/ docs/
🔒
security-check.sh
PreToolUse: Edit | Write → exit 2 on dangerous patterns
Scans the content being written for insecure patterns before they're committed to disk. First line of defense — catches the most obvious issues at write time, before Security (Stage 6) does the deep analysis.
Python blocks:
f-strings in SQL pickle.loads os.system subprocess shell=True eval()
JS/TS blocks:
eval() innerHTML assignment exec() with interpolation
Go blocks:
fmt.Sprintf for SQL string concat in exec
Universal:
hardcoded secrets Docker runs as root Svelte {@html} unsafe
Smart filtering: Doesn't block mock values in tests (password = "test123"), placeholder comments (# TODO: use env var), or documentation examples. Only real production code patterns.
🔐
protect-files.sh
PreToolUse: Edit | Write → exit 2 on protected paths
Blocks any agent from editing sensitive files. Reads the protected paths from .tasuki/config/protected-files.txt, which is populated with stack-specific entries during onboard.
.env · .env.* secrets/ package-lock.json Pipfile.lock yarn.lock .git/ node_modules/

MCP servers

Each MCP mapped
to specific stages.

When you run tasuki install mcp X, it shows you exactly which stages and agents it connects to.

MCP Stage Agent(s) Purpose
Taskmaster 1b Planner Parse PRD into per-agent tasks (~50 tokens each vs 2000 for full PRD)
Context7 ALL All agents Up-to-date framework documentation — prevents hallucinated API usage
Playwright 2, 5 QA, Frontend E2E testing automation and visual regression testing
Postgres 3, 5.5 DB Architect, Debugger Schema inspection, data diagnostics, query analysis
Figma 5a Frontend Pull design specs directly — exact colors, spacing, component specs
Stitch 5a Frontend Generate design preview when no Figma file exists
Semgrep 6, 7 Security, Reviewer Static analysis — patterns the human eye misses at scale
Sentry 5.5, 6, 8 Debugger, Security, DevOps Error tracking, exception correlation, health checks after deploy
GitHub 7, 8 Reviewer, DevOps PR creation, CI status, branch protection checks

Multi-AI support

One config.
Eight AI tools.

Tasuki's internal format (.tasuki/) is AI-agnostic. Adapters translate to each platform. Claude Code gets the most — it's the only tool with native sub-agents.

Claude Code
CLAUDE.md · hooks active
Full pipeline via Agent() sub-agents · mechanical hooks · full memory
Cursor
.cursor/rules/ · mcp.json
Role-switching pipeline · advisory rules · full memory vault
Codex CLI
AGENTS.md
Role-switching · o3 for thinking, o4-mini for execution · memory vault
GitHub Copilot
.github/instructions/
Per-agent instruction files · advisory security rules · memory vault
Windsurf
.windsurfrules
Single rules file · role-switching protocol · memory vault
Continue
.continue/rules/
Per-agent rule files · advisory hooks · memory vault
Roo Code
.roo/rules/
Custom agent modes · role-switching · memory vault
Gemini CLI
GEMINI.md
gemini-2.5-pro for thinking · gemini-2.5-flash for execution · memory
Model translation

Adapters automatically translate model references. "thinking" and "execution" are tiers, not hardcoded model names.

Tier Claude Code Codex CLI Gemini CLI Cursor
thinking claude-opus-4 o3 gemini-2.5-pro claude-sonnet-4
execution claude-sonnet-4 o4-mini gemini-2.5-flash claude-sonnet-4
Why tiered models? Planner, Security, and Reviewer use "thinking" (opus/o3) for deep reasoning. The 6 implementation agents use "execution" (sonnet/o4-mini) for speed. This saves ~60% on token costs without sacrificing quality where it matters.
What gets generated

One command.
All of this.

Running tasuki onboard . on a Django project generates this structure in ~10 seconds. Zero API calls.

Generated files
your-project/
├── CLAUDE.md ← orchestration brain (auto-generated)
├── .mcp.json ← MCP server configuration
├── .tasuki/
│ ├── agents/ ← 9 specialized agent files (250+ lines each)
│ ├── rules/ ← auto-loaded conventions per file type
│ ├── hooks/ ← tdd-guard, security-check, protect-files
│ ├── skills/ ← 10+ reusable skill definitions
│ ├── settings.json ← permissions + hook configuration
│ └── config/
│ ├── project-facts.md ← verified stack info (~156 tokens)
│ ├── capability-map.yaml ← agent routing index
│ └── rag-sync-batch.jsonl ← deep memory index
├── memory-vault/ ← knowledge graph (wikilinks)
│ ├── agents/ heuristics/ bugs/ ← 9 node types
│ └── tools/ decisions/ stack/ ← auto-seeded from detection
└── tasuki-plans/ ← pipeline plan tracking
└── index.md ← feature index with status
9
agents configured
3
hooks installed
20
vault nodes seeded
$0
API calls made

Common questions

CLI FAQ

No. 90% of users only need 3: tasuki (onboard), tasuki dashboard, and tasuki progress. The rest are power-user tools for debugging, team workflows, and plugin management. Think of it like git — 150+ commands, you use 5.
5 detectors run against your actual files — no API calls. Backend detector greps imports for framework detection. Database detector checks requirements.txt, package.json, and config files. Frontend detector looks for React/Vue/Svelte patterns. Infra detector finds Docker/CI configs. Testing detector finds test frameworks and coverage tools. Everything verified from real files, not guessed.
Yes — the Generic profile activates as fallback. All 9 agents still configure with universal best practices. You just won't get stack-specific migration patterns or framework-aware test conventions. You can also contribute a new profile — it's a YAML file with detection rules and conventions.
On Claude Code: hooks are registered in settings.json as PreToolUse events. When Claude tries to Edit or Write a file, the hook script runs first. Exit 0 = allow, exit 2 = block with message. Claude Code enforces this mechanically — the AI cannot bypass it. On other tools: hooks become advisory rules in the AI's instructions — strongly worded but not physically enforced.
Yes. Run tasuki onboard . --target=all and it generates config for all 8 tools simultaneously. Each adapter writes to its own location (CLAUDE.md, .cursor/rules/, .windsurfrules, etc.). They share the same .tasuki/ directory, memory vault, and plans.
A local HTML dashboard served at localhost:8686 with: pipeline progress with animated agent characters, interactive D3.js knowledge graph, cost-per-task table, health score breakdown, agent usage charts, mode distribution, and an activity log showing errors prevented and heuristics applied. Auto-updates when pipeline state changes.
tasuki install mcp playwright adds it to .mcp.json and tells you which pipeline stages use it ("Stage 2 QA + Stage 5 Frontend"). tasuki install agent mobile-dev creates the agent file and auto-registers it in the capability map. tasuki plugins shows the full catalog (23 MCPs, 11 skills).
No. Tasuki is a CLI that generates config files locally. It makes zero network requests — no analytics, no telemetry, no phone home. Your code goes wherever your AI tool already sends it (Claude API, OpenAI API, etc.). Tasuki adds zero new data flows. The entire framework is bash scripts that read and write local files.

36 commands.
10 seconds to configure.

Everything above is what you get when you run one command.

npm install -g tasuki
click to copy