AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
워크플로우 한 번 승인하면 다시 설명할 필요 없습니다. 활동 추적·패턴 감지·MCP 기반 워크플로우 실행 지원
Approve a workflow once — never re-explain a process again. Activity tracing, pattern detection, and MCP-native workflow execution for coding agents.
개발 도구TypeScript · JavaScriptGitHub @Keyoku-ai온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
The harness with muscle memory — activity tracing, pattern detection, and one-command workflow execution for Claude Code, Cursor, and Codex
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
The harness with muscle memory.
Keyoku watches what you do in Claude Code, Cursor, or Codex, learns your patterns, and turns them into one-command workflows — automatically.
Install it once, then wire it up:
A global install keeps keyoku on a durable path. Running npx keyoku init
from the throwaway npx cache is refused — npm can evict that directory and
break the hooks — so install globally first.README 전문 보기 ↗Install it once, then wire it up:
npm install -g keyoku
keyoku init
A global install keeps keyoku on a durable path. Running
npx keyoku initfrom the throwaway npx cache is refused — npm can evict that directory and break the hooks — so install globally first.
The init command wires everything automatically:
claude mcp add --scope user, so Claude Code connects on next launch~/.codex exists, the MCP server lands in config.toml automatically (same tools, same workflows)~/.keyoku with the same file permissions as ~/.aws. keyoku pause stops everything instantly.Restart Claude Code and keyoku is live. Then skip the cold start entirely:
keyoku import # backfill months of history from your Claude Code transcripts
Now ask your agent to run workflow_suggest — keyoku mines your real history immediately instead of waiting days for new activity. Approved workflows appear as native slash commands (MCP prompts), and keyoku export <slug> bakes one into your repo as a Claude Code skill your whole team inherits.
Without Keyoku: you describe the same multi-step process to your agent every session.
With Keyoku: you approve a workflow once, then run it with one command. The agent never has to rediscover it.
Every tool call your agent makes is recorded as a lightweight ActivityEvent — tool name, summary, extracted entities. Purely local.
workflow_suggest mines recurring sequences from your recent activity (non-overlapping counting, noise suppression, longest-chain collapsing — no model required). If an SLM key is configured (GEMINI_API_KEY or ANTHROPIC_API_KEY), the model then refines the drafts: filters coincidences, names workflows properly, and parameterizes run-specific values with {{placeholders}}.
A goal that converges (goal_assess reports all criteria met) promotes its action trace into a learned workflow. Next time you start a similar goal, keyoku surfaces what worked before — so the agent never rediscovers it.
goal_record, live goal_focus (real actions stream into the goal's trace as you work), or activity backfill (if you just did the work without recording, keyoku lifts the steps from the activity log). Already have hollow workflows from older runs? keyoku backfill repopulates them.goal_assess returns candidateWorkflows and the agent picks the ones that genuinely apply — which matches verbose, differently-worded goals that token-overlap never could. A lite model is an optional accelerator for headless runs (keyoku watch/cron), not a requirement.similarity × precision, where precision is learned from whether a workflow's steps actually recur — so word-matching-but-never-useful workflows sink.keyoku refine <slug> turns noisy captured steps into a tight, {{parameterized}} template ready to run.workflow_approve { slug: "deploy-staging", name: "Deploy staging", steps: [...] }
Review the draft like you'd review a shell script, then approve. Templates live in ~/.keyoku/templates.json.
workflow_execute { slug: "deploy-staging" }
cwd, timeouts, output captured)execution_completeEvery execution persists step-by-step — crash-safe, fully inspectable via execution_list.
| Tool | What it does |
|---|---|
activity_record / activity_list | Log and browse the observation stream |
workflow_suggest | Mine patterns → model-refined draft workflows |
workflow_capture | "Save what I just did" — last N session actions become a draft |
workflow_approve / workflow_update | Save or edit templates (slash commands stay current) |
workflow_template_list / workflow_template_delete | Manage the catalog |
workflow_execute | Run a template (params fill {{placeholders}}) |
execution_complete / execution_cancel / execution_list | Resume, stop, browse runs |
knowledge_submit / knowledge_query | The context layer — research, conventions, practice |
goal_create / goal_assess / … | Goals with machine-checkable success criteria |
goal_focus / goal_unfocus | Live capture — record real actions into a goal's trace as you work |
connector_add / connector_call / … | Plug in external MCP servers (GitHub, GCP, …) with autonomy gating |
keyoku [serve] Start the MCP server on stdio (Claude Code does this automatically)
keyoku init Wire up the hook + MCP registration
keyoku import Backfill activity from Claude Code + Codex transcripts (kills the cold start)
keyoku export <slug> Bake a workflow into ./.claude/skills — or AGENTS.md with --agents-md
keyoku pause | resume Privacy switch: stop/start all recording and injection
keyoku doctor Verify hooks, MCP registrations, engine, and activity health
keyoku inspect Show exactly what's stored in ~/.keyoku (--secrets scans for leaks)
keyoku status Show goals, templates, connectors
keyoku learn Mine patterns from the activity log
keyoku backfill Repopulate hollow learned workflows from the activity log (--dry-run)
keyoku refine <slug> Turn a workflow's raw steps into a clean, parameterized template (--apply)
keyoku focus <goal> Live-capture actions into a goal's trace (--clear to stop; no arg to show)
keyoku assess <goal> One-shot convergence check
keyoku watch <goal> Re-assess on an interval
keyoku approvals Approve/deny gated connector calls
keyoku audit [n] Show the audit trail
Your machine
├── Claude Code (or Cursor, Codex)
│ ├── PostToolUse hook → keyoku record (activity logging)
│ └── MCP connection → keyoku serve (tool calls)
│
└── ~/.keyoku/
├── activity.jsonl (event stream, capped)
├── templates.json (approved workflows)
├── executions.json (run history)
├── goals.json (convergence targets)
└── connectors.json (external MCP services)
The division of labor: heuristics generate candidates for free, the small model refines them cheaply, and your coding agent does the heavy lifting on the subscription you already pay for. Keyoku orchestrates; it never burns frontier tokens.
| Env var | Default | Purpose |
|---|---|---|
KEYOKU_HOME | ~/.keyoku | State directory |
GEMINI_API_KEY / ANTHROPIC_API_KEY | — | Enable model-refined suggestions |
KEYOKU_SLM_PROVIDER | auto | gemini, anthropic, openai-compat, or none |
KEYOKU_SLM_BASE_URL / KEYOKU_SLM_MODEL | — | Any OpenAI-compatible endpoint (Ollama, LM Studio, LiteLLM, Groq, …) |
KEYOKU_ENGINE_URL | — | Connect a running keyoku-engine: knowledge mirrors into it and queries upgrade to semantic search |
KEYOKU_WF_MIN_SIMILARITY | 0.2 | Jaccard floor for suggesting a learned workflow on a new goal |
KEYOKU_WF_SUGGEST_LIMIT | 2 | Max learned workflows surfaced per assessment |
KEYOKU_BACKFILL_LOOKBACK_MIN | 45 | Minutes before a goal's creation to scan for build-then-verify work |
KEYOKU_BACKFILL_HEAD_STEPS | 8 | Setup steps kept from the front when a backfilled workflow is capped |
KEYOKU_DEBUG | — | Full error stacks |
Approved templates execute shell commands with your privileges — the approval step is the trust boundary. Read SECURITY.md before installing.
The Go backend for teams: knowledge graph, semantic search, memory decay, and cross-device sync. Available at github.com/Keyoku-ai/keyoku-engine.
MIT — see LICENSE.