oh-my-customcodex 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +327 -0
- package/dist/cli/index.js +32054 -0
- package/dist/index.js +5469 -0
- package/package.json +89 -0
- package/templates/.claude/agents/arch-documenter.md +38 -0
- package/templates/.claude/agents/arch-speckit-agent.md +66 -0
- package/templates/.claude/agents/be-django-expert.md +47 -0
- package/templates/.claude/agents/be-express-expert.md +31 -0
- package/templates/.claude/agents/be-fastapi-expert.md +45 -0
- package/templates/.claude/agents/be-go-backend-expert.md +45 -0
- package/templates/.claude/agents/be-nestjs-expert.md +29 -0
- package/templates/.claude/agents/be-springboot-expert.md +42 -0
- package/templates/.claude/agents/db-alembic-expert.md +73 -0
- package/templates/.claude/agents/db-postgres-expert.md +38 -0
- package/templates/.claude/agents/db-redis-expert.md +38 -0
- package/templates/.claude/agents/db-supabase-expert.md +37 -0
- package/templates/.claude/agents/de-airflow-expert.md +48 -0
- package/templates/.claude/agents/de-dbt-expert.md +36 -0
- package/templates/.claude/agents/de-kafka-expert.md +83 -0
- package/templates/.claude/agents/de-pipeline-expert.md +34 -0
- package/templates/.claude/agents/de-snowflake-expert.md +38 -0
- package/templates/.claude/agents/de-spark-expert.md +38 -0
- package/templates/.claude/agents/fe-design-expert.md +120 -0
- package/templates/.claude/agents/fe-flutter-agent.md +48 -0
- package/templates/.claude/agents/fe-svelte-agent.md +33 -0
- package/templates/.claude/agents/fe-vercel-agent.md +40 -0
- package/templates/.claude/agents/fe-vuejs-agent.md +34 -0
- package/templates/.claude/agents/infra-aws-expert.md +49 -0
- package/templates/.claude/agents/infra-docker-expert.md +49 -0
- package/templates/.claude/agents/lang-golang-expert.md +46 -0
- package/templates/.claude/agents/lang-java21-expert.md +42 -0
- package/templates/.claude/agents/lang-kotlin-expert.md +45 -0
- package/templates/.claude/agents/lang-python-expert.md +45 -0
- package/templates/.claude/agents/lang-rust-expert.md +45 -0
- package/templates/.claude/agents/lang-typescript-expert.md +45 -0
- package/templates/.claude/agents/mgr-claude-code-bible.md +62 -0
- package/templates/.claude/agents/mgr-creator.md +57 -0
- package/templates/.claude/agents/mgr-gitnerd.md +50 -0
- package/templates/.claude/agents/mgr-sauron.md +163 -0
- package/templates/.claude/agents/mgr-supplier.md +39 -0
- package/templates/.claude/agents/mgr-updater.md +40 -0
- package/templates/.claude/agents/qa-engineer.md +36 -0
- package/templates/.claude/agents/qa-planner.md +78 -0
- package/templates/.claude/agents/qa-writer.md +32 -0
- package/templates/.claude/agents/sec-codeql-expert.md +56 -0
- package/templates/.claude/agents/slack-cli-expert.md +98 -0
- package/templates/.claude/agents/souls/lang-golang-expert.soul.md +21 -0
- package/templates/.claude/agents/sys-memory-keeper.md +123 -0
- package/templates/.claude/agents/sys-naggy.md +76 -0
- package/templates/.claude/agents/tool-bun-expert.md +26 -0
- package/templates/.claude/agents/tool-npm-expert.md +31 -0
- package/templates/.claude/agents/tool-optimizer.md +37 -0
- package/templates/.claude/agents/wiki-curator.md +72 -0
- package/templates/.claude/config/required-plugins.json +30 -0
- package/templates/.claude/contexts/dev.md +20 -0
- package/templates/.claude/contexts/ecomode.md +110 -0
- package/templates/.claude/contexts/index.yaml +41 -0
- package/templates/.claude/contexts/research.md +28 -0
- package/templates/.claude/contexts/review.md +23 -0
- package/templates/.claude/hooks/hooks.json +533 -0
- package/templates/.claude/hooks/scripts/adaptive-harness-scan.sh +45 -0
- package/templates/.claude/hooks/scripts/agent-start-recorder.sh +40 -0
- package/templates/.claude/hooks/scripts/agent-teams-advisor.sh +76 -0
- package/templates/.claude/hooks/scripts/audit-log.sh +64 -0
- package/templates/.claude/hooks/scripts/auto-continue-guard.sh +33 -0
- package/templates/.claude/hooks/scripts/content-hash-validator.sh +75 -0
- package/templates/.claude/hooks/scripts/context-budget-advisor.sh +107 -0
- package/templates/.claude/hooks/scripts/cost-cap-advisor.sh +71 -0
- package/templates/.claude/hooks/scripts/cwd-change-detector.sh +36 -0
- package/templates/.claude/hooks/scripts/eval-core-batch-save.sh +46 -0
- package/templates/.claude/hooks/scripts/feedback-collector.sh +92 -0
- package/templates/.claude/hooks/scripts/file-change-validator.sh +26 -0
- package/templates/.claude/hooks/scripts/git-delegation-guard.sh +57 -0
- package/templates/.claude/hooks/scripts/model-escalation-advisor.sh +106 -0
- package/templates/.claude/hooks/scripts/omcodex-auto-update.sh +4 -0
- package/templates/.claude/hooks/scripts/omcustom-auto-update.sh +177 -0
- package/templates/.claude/hooks/scripts/rtk-intercept.sh +77 -0
- package/templates/.claude/hooks/scripts/rule-deletion-guard.sh +60 -0
- package/templates/.claude/hooks/scripts/schema-validator.sh +106 -0
- package/templates/.claude/hooks/scripts/secret-filter.sh +100 -0
- package/templates/.claude/hooks/scripts/session-autofix-prompt.sh +34 -0
- package/templates/.claude/hooks/scripts/session-autofix.sh +146 -0
- package/templates/.claude/hooks/scripts/session-env-check.sh +254 -0
- package/templates/.claude/hooks/scripts/skill-extractor-analyzer.sh +49 -0
- package/templates/.claude/hooks/scripts/stage-blocker.sh +16 -0
- package/templates/.claude/hooks/scripts/stale-todo-scanner.sh +91 -0
- package/templates/.claude/hooks/scripts/stall-detection-advisor.sh +112 -0
- package/templates/.claude/hooks/scripts/stop-console-audit.sh +46 -0
- package/templates/.claude/hooks/scripts/stuck-detector.sh +199 -0
- package/templates/.claude/hooks/scripts/task-outcome-recorder.sh +119 -0
- package/templates/.claude/hooks/scripts/task-state-precompact.sh +58 -0
- package/templates/.claude/hooks/scripts/user-prompt-preprocessor.sh +32 -0
- package/templates/.claude/hooks/skill-count-reminder.sh +34 -0
- package/templates/.claude/install-hooks.sh +100 -0
- package/templates/.claude/ontology/agents.yaml +546 -0
- package/templates/.claude/ontology/graphs/agent-skill.json +102 -0
- package/templates/.claude/ontology/graphs/full-graph.json +629 -0
- package/templates/.claude/ontology/graphs/routing.json +112 -0
- package/templates/.claude/ontology/graphs/skill-rule.json +78 -0
- package/templates/.claude/ontology/rules.yaml +251 -0
- package/templates/.claude/ontology/schema.yaml +144 -0
- package/templates/.claude/ontology/skills.yaml +575 -0
- package/templates/.claude/rules/MAY-optimization.md +42 -0
- package/templates/.claude/rules/MUST-agent-design.md +340 -0
- package/templates/.claude/rules/MUST-agent-identification.md +77 -0
- package/templates/.claude/rules/MUST-agent-teams.md +293 -0
- package/templates/.claude/rules/MUST-completion-verification.md +112 -0
- package/templates/.claude/rules/MUST-continuous-improvement.md +69 -0
- package/templates/.claude/rules/MUST-enforcement-policy.md +50 -0
- package/templates/.claude/rules/MUST-intent-transparency.md +74 -0
- package/templates/.claude/rules/MUST-language-policy.md +28 -0
- package/templates/.claude/rules/MUST-orchestrator-coordination.md +399 -0
- package/templates/.claude/rules/MUST-parallel-execution.md +184 -0
- package/templates/.claude/rules/MUST-permissions.md +32 -0
- package/templates/.claude/rules/MUST-safety.md +23 -0
- package/templates/.claude/rules/MUST-sync-verification.md +145 -0
- package/templates/.claude/rules/MUST-tool-identification.md +97 -0
- package/templates/.claude/rules/SHOULD-ecomode.md +123 -0
- package/templates/.claude/rules/SHOULD-error-handling.md +33 -0
- package/templates/.claude/rules/SHOULD-hud-statusline.md +51 -0
- package/templates/.claude/rules/SHOULD-interaction.md +77 -0
- package/templates/.claude/rules/SHOULD-memory-integration.md +371 -0
- package/templates/.claude/rules/SHOULD-ontology-rag-routing.md +49 -0
- package/templates/.claude/rules/SHOULD-wiki-sync.md +73 -0
- package/templates/.claude/rules/index.yaml +141 -0
- package/templates/.claude/schemas/tool-inputs.json +62 -0
- package/templates/.claude/skills/action-validator/SKILL.md +89 -0
- package/templates/.claude/skills/adaptive-harness/SKILL.md +335 -0
- package/templates/.claude/skills/adversarial-review/SKILL.md +80 -0
- package/templates/.claude/skills/agora/SKILL.md +194 -0
- package/templates/.claude/skills/airflow-best-practices/SKILL.md +94 -0
- package/templates/.claude/skills/alembic-best-practices/SKILL.md +295 -0
- package/templates/.claude/skills/ambiguity-gate/SKILL.md +94 -0
- package/templates/.claude/skills/analysis/SKILL.md +223 -0
- package/templates/.claude/skills/audit-agents/SKILL.md +118 -0
- package/templates/.claude/skills/aws-best-practices/SKILL.md +281 -0
- package/templates/.claude/skills/claude-code-bible/SKILL.md +93 -0
- package/templates/.claude/skills/claude-code-bible/scripts/fetch-docs.js +244 -0
- package/templates/.claude/skills/claude-native/SKILL.md +215 -0
- package/templates/.claude/skills/codex-exec/SKILL.md +206 -0
- package/templates/.claude/skills/codex-exec/scripts/codex-wrapper.cjs +430 -0
- package/templates/.claude/skills/create-agent/SKILL.md +94 -0
- package/templates/.claude/skills/cve-triage/SKILL.md +91 -0
- package/templates/.claude/skills/dag-orchestration/SKILL.md +201 -0
- package/templates/.claude/skills/dbt-best-practices/SKILL.md +55 -0
- package/templates/.claude/skills/de-lead-routing/SKILL.md +230 -0
- package/templates/.claude/skills/deep-plan/SKILL.md +344 -0
- package/templates/.claude/skills/deep-verify/SKILL.md +111 -0
- package/templates/.claude/skills/dev-lead-routing/SKILL.md +161 -0
- package/templates/.claude/skills/dev-refactor/SKILL.md +234 -0
- package/templates/.claude/skills/dev-review/SKILL.md +172 -0
- package/templates/.claude/skills/django-best-practices/SKILL.md +334 -0
- package/templates/.claude/skills/docker-best-practices/SKILL.md +276 -0
- package/templates/.claude/skills/evaluator-optimizer/SKILL.md +421 -0
- package/templates/.claude/skills/fastapi-best-practices/SKILL.md +271 -0
- package/templates/.claude/skills/fix-refs/SKILL.md +109 -0
- package/templates/.claude/skills/flutter-best-practices/SKILL.md +325 -0
- package/templates/.claude/skills/gemini-exec/SKILL.md +215 -0
- package/templates/.claude/skills/gemini-exec/scripts/gemini-wrapper.cjs +485 -0
- package/templates/.claude/skills/go-backend-best-practices/SKILL.md +135 -0
- package/templates/.claude/skills/go-best-practices/SKILL.md +204 -0
- package/templates/.claude/skills/hada-scout/SKILL.md +92 -0
- package/templates/.claude/skills/harness-eval/SKILL.md +95 -0
- package/templates/.claude/skills/harness-synthesizer/SKILL.md +145 -0
- package/templates/.claude/skills/help/SKILL.md +127 -0
- package/templates/.claude/skills/idea/SKILL.md +88 -0
- package/templates/.claude/skills/impeccable-design/SKILL.md +173 -0
- package/templates/.claude/skills/intent-detection/SKILL.md +293 -0
- package/templates/.claude/skills/intent-detection/patterns/agent-triggers.yaml +438 -0
- package/templates/.claude/skills/java21-best-practices/SKILL.md +190 -0
- package/templates/.claude/skills/jinja2-prompts/SKILL.md +86 -0
- package/templates/.claude/skills/kafka-best-practices/SKILL.md +53 -0
- package/templates/.claude/skills/kotlin-best-practices/SKILL.md +257 -0
- package/templates/.claude/skills/lists/SKILL.md +80 -0
- package/templates/.claude/skills/memory-management/SKILL.md +196 -0
- package/templates/.claude/skills/memory-recall/SKILL.md +172 -0
- package/templates/.claude/skills/memory-save/SKILL.md +128 -0
- package/templates/.claude/skills/model-escalation/SKILL.md +62 -0
- package/templates/.claude/skills/monitoring-setup/SKILL.md +215 -0
- package/templates/.claude/skills/multi-model-verification/SKILL.md +130 -0
- package/templates/.claude/skills/npm-audit/SKILL.md +74 -0
- package/templates/.claude/skills/npm-publish/SKILL.md +65 -0
- package/templates/.claude/skills/npm-version/SKILL.md +104 -0
- package/templates/.claude/skills/omcodex-auto-improve/SKILL.md +136 -0
- package/templates/.claude/skills/omcodex-feedback/SKILL.md +205 -0
- package/templates/.claude/skills/omcodex-improve-report/SKILL.md +65 -0
- package/templates/.claude/skills/omcodex-loop/SKILL.md +45 -0
- package/templates/.claude/skills/omcodex-release-notes/SKILL.md +117 -0
- package/templates/.claude/skills/omcodex-takeover/SKILL.md +115 -0
- package/templates/.claude/skills/omcodex-web/SKILL.md +95 -0
- package/templates/.claude/skills/optimize-analyze/SKILL.md +57 -0
- package/templates/.claude/skills/optimize-bundle/SKILL.md +69 -0
- package/templates/.claude/skills/optimize-report/SKILL.md +76 -0
- package/templates/.claude/skills/peer-messaging/SKILL.md +59 -0
- package/templates/.claude/skills/pipeline/SKILL.md +103 -0
- package/templates/.claude/skills/pipeline-architecture-patterns/SKILL.md +84 -0
- package/templates/.claude/skills/pipeline-guards/SKILL.md +173 -0
- package/templates/.claude/skills/post-release-followup/SKILL.md +134 -0
- package/templates/.claude/skills/postgres-best-practices/SKILL.md +67 -0
- package/templates/.claude/skills/pr-auto-improve/SKILL.md +129 -0
- package/templates/.claude/skills/professor-triage/SKILL.md +321 -0
- package/templates/.claude/skills/python-best-practices/SKILL.md +223 -0
- package/templates/.claude/skills/qa-lead-routing/SKILL.md +104 -0
- package/templates/.claude/skills/react-best-practices/SKILL.md +102 -0
- package/templates/.claude/skills/reasoning-sandwich/SKILL.md +64 -0
- package/templates/.claude/skills/redis-best-practices/SKILL.md +84 -0
- package/templates/.claude/skills/release-plan/SKILL.md +207 -0
- package/templates/.claude/skills/research/SKILL.md +493 -0
- package/templates/.claude/skills/result-aggregation/SKILL.md +165 -0
- package/templates/.claude/skills/rtk-exec/SKILL.md +199 -0
- package/templates/.claude/skills/rtk-exec/scripts/rtk-wrapper.cjs +377 -0
- package/templates/.claude/skills/rust-best-practices/SKILL.md +268 -0
- package/templates/.claude/skills/sauron-watch/SKILL.md +239 -0
- package/templates/.claude/skills/scout/SKILL.md +250 -0
- package/templates/.claude/skills/sdd/SKILL.md +24 -0
- package/templates/.claude/skills/sdd-dev/SKILL.md +257 -0
- package/templates/.claude/skills/sdd-development/SKILL.md +24 -0
- package/templates/.claude/skills/secretary-routing/SKILL.md +132 -0
- package/templates/.claude/skills/skill-extractor/SKILL.md +155 -0
- package/templates/.claude/skills/skills-sh-search/SKILL.md +210 -0
- package/templates/.claude/skills/snowflake-best-practices/SKILL.md +66 -0
- package/templates/.claude/skills/spark-best-practices/SKILL.md +53 -0
- package/templates/.claude/skills/springboot-best-practices/SKILL.md +74 -0
- package/templates/.claude/skills/springboot-best-practices/examples/config-properties-example.java +22 -0
- package/templates/.claude/skills/springboot-best-practices/examples/controller-example.java +28 -0
- package/templates/.claude/skills/springboot-best-practices/examples/controller-test-example.java +33 -0
- package/templates/.claude/skills/springboot-best-practices/examples/entity-example.java +22 -0
- package/templates/.claude/skills/springboot-best-practices/examples/exception-handler-example.java +30 -0
- package/templates/.claude/skills/springboot-best-practices/examples/repository-example.java +17 -0
- package/templates/.claude/skills/springboot-best-practices/examples/repository-test-example.java +23 -0
- package/templates/.claude/skills/springboot-best-practices/examples/security-config-example.java +27 -0
- package/templates/.claude/skills/springboot-best-practices/examples/service-example.java +33 -0
- package/templates/.claude/skills/status/SKILL.md +155 -0
- package/templates/.claude/skills/structured-dev-cycle/SKILL.md +200 -0
- package/templates/.claude/skills/stuck-recovery/SKILL.md +80 -0
- package/templates/.claude/skills/supabase-postgres-best-practices/SKILL.md +100 -0
- package/templates/.claude/skills/systematic-debugging/SKILL.md +288 -0
- package/templates/.claude/skills/systematic-debugging/condition-based-waiting-example.ts +278 -0
- package/templates/.claude/skills/systematic-debugging/condition-based-waiting.md +240 -0
- package/templates/.claude/skills/systematic-debugging/defense-in-depth.md +252 -0
- package/templates/.claude/skills/systematic-debugging/find-polluter.sh +147 -0
- package/templates/.claude/skills/systematic-debugging/root-cause-tracing.md +87 -0
- package/templates/.claude/skills/task-decomposition/SKILL.md +197 -0
- package/templates/.claude/skills/typescript-best-practices/SKILL.md +322 -0
- package/templates/.claude/skills/update-docs/SKILL.md +142 -0
- package/templates/.claude/skills/update-external/SKILL.md +169 -0
- package/templates/.claude/skills/vercel-deploy/SKILL.md +75 -0
- package/templates/.claude/skills/web-design-guidelines/SKILL.md +119 -0
- package/templates/.claude/skills/wiki/SKILL.md +426 -0
- package/templates/.claude/skills/wiki-rag/SKILL.md +154 -0
- package/templates/.claude/skills/worker-reviewer-pipeline/SKILL.md +165 -0
- package/templates/.claude/skills/writing-clearly-and-concisely/SKILL.md +66 -0
- package/templates/.claude/statusline.sh +380 -0
- package/templates/.claude/uninstall-hooks.sh +52 -0
- package/templates/.github/workflows/wiki-sync.yml +132 -0
- package/templates/AGENTS.md.en +255 -0
- package/templates/AGENTS.md.ko +255 -0
- package/templates/CLAUDE.md +263 -0
- package/templates/CLAUDE.md.en +256 -0
- package/templates/CLAUDE.md.ko +256 -0
- package/templates/deprecated-files.json +10 -0
- package/templates/guides/agents-md-quality/README.md +110 -0
- package/templates/guides/airflow/README.md +47 -0
- package/templates/guides/alembic/README.md +438 -0
- package/templates/guides/aws/common-patterns.md +169 -0
- package/templates/guides/aws/index.yaml +26 -0
- package/templates/guides/aws/well-architected.md +143 -0
- package/templates/guides/cc-token-saver/README.md +97 -0
- package/templates/guides/claude-code/01-overview.md +42 -0
- package/templates/guides/claude-code/03-tools.md +107 -0
- package/templates/guides/claude-code/04-agent-skills.md +90 -0
- package/templates/guides/claude-code/05-agent-sdk.md +129 -0
- package/templates/guides/claude-code/06-mcp.md +165 -0
- package/templates/guides/claude-code/07-prompt-engineering.md +100 -0
- package/templates/guides/claude-code/08-testing.md +56 -0
- package/templates/guides/claude-code/09-guardrails.md +78 -0
- package/templates/guides/claude-code/10-monitoring.md +87 -0
- package/templates/guides/claude-code/11-sub-agents.md +159 -0
- package/templates/guides/claude-code/12-workflow-patterns.md +182 -0
- package/templates/guides/claude-code/13-cli-flags.md +151 -0
- package/templates/guides/claude-code/index.yaml +61 -0
- package/templates/guides/dbt/README.md +32 -0
- package/templates/guides/django-best-practices/README.md +476 -0
- package/templates/guides/docker/compose-best-practices.md +284 -0
- package/templates/guides/docker/dockerfile-best-practices.md +262 -0
- package/templates/guides/docker/index.yaml +26 -0
- package/templates/guides/drizzle-orm/README.md +69 -0
- package/templates/guides/elements-of-style/elements-of-style.html +2609 -0
- package/templates/guides/fastapi/best-practices.md +232 -0
- package/templates/guides/fastapi/index.yaml +21 -0
- package/templates/guides/flutter/architecture.md +141 -0
- package/templates/guides/flutter/fundamentals.md +119 -0
- package/templates/guides/flutter/index.yaml +44 -0
- package/templates/guides/flutter/performance.md +119 -0
- package/templates/guides/flutter/security.md +120 -0
- package/templates/guides/flutter/state-management.md +144 -0
- package/templates/guides/flutter/testing.md +155 -0
- package/templates/guides/git-worktree-workflow/README.md +138 -0
- package/templates/guides/go-backend/index.yaml +26 -0
- package/templates/guides/go-backend/project-layout.md +243 -0
- package/templates/guides/go-backend/uber-style.md +212 -0
- package/templates/guides/golang/concurrency.md +282 -0
- package/templates/guides/golang/effective-go.md +309 -0
- package/templates/guides/golang/error-handling.md +250 -0
- package/templates/guides/golang/index.yaml +27 -0
- package/templates/guides/hook-data-flow/README.md +135 -0
- package/templates/guides/iceberg/README.md +49 -0
- package/templates/guides/impeccable-design/color-and-contrast.md +278 -0
- package/templates/guides/impeccable-design/index.yaml +12 -0
- package/templates/guides/impeccable-design/motion-design.md +390 -0
- package/templates/guides/impeccable-design/typography.md +386 -0
- package/templates/guides/impeccable-design/ux-writing.md +400 -0
- package/templates/guides/index.yaml +265 -0
- package/templates/guides/java21/index.yaml +29 -0
- package/templates/guides/java21/java-style-guide.md +248 -0
- package/templates/guides/java21/modern-java21.md +303 -0
- package/templates/guides/kafka/README.md +32 -0
- package/templates/guides/kotlin/coding-conventions.md +247 -0
- package/templates/guides/kotlin/idioms.md +234 -0
- package/templates/guides/kotlin/index.yaml +26 -0
- package/templates/guides/multi-model-routing/README.md +101 -0
- package/templates/guides/multi-provider-exec/README.md +83 -0
- package/templates/guides/postgres/README.md +58 -0
- package/templates/guides/python/index.yaml +26 -0
- package/templates/guides/python/pep8-style-guide.md +202 -0
- package/templates/guides/python/zen-of-python.md +79 -0
- package/templates/guides/redis/README.md +50 -0
- package/templates/guides/rust/error-handling.md +262 -0
- package/templates/guides/rust/index.yaml +26 -0
- package/templates/guides/rust/ownership.md +180 -0
- package/templates/guides/skill-bundle-design/README.md +106 -0
- package/templates/guides/slack-cli/README.md +145 -0
- package/templates/guides/snowflake/README.md +32 -0
- package/templates/guides/spark/README.md +32 -0
- package/templates/guides/springboot/best-practices.md +361 -0
- package/templates/guides/springboot/index.yaml +22 -0
- package/templates/guides/supabase-postgres/README.md +32 -0
- package/templates/guides/supabase-postgres/index.yaml +19 -0
- package/templates/guides/typescript/advanced-types.md +225 -0
- package/templates/guides/typescript/index.yaml +26 -0
- package/templates/guides/typescript/type-system.md +219 -0
- package/templates/guides/web-design/accessibility.md +66 -0
- package/templates/guides/web-design/index.yaml +20 -0
- package/templates/guides/web-design/performance.md +102 -0
- package/templates/guides/web-scraping/README.md +926 -0
- package/templates/guides/web-scraping/index.yaml +19 -0
- package/templates/guides/worktree-lifecycle/README.md +104 -0
- package/templates/index.yaml +18 -0
- package/templates/manifest.json +49 -0
- package/templates/workflows/auto-dev.yaml +46 -0
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
# [MUST] Sync Verification Rules
|
|
2
|
+
|
|
3
|
+
> **Priority**: MUST | **ID**: R017
|
|
4
|
+
|
|
5
|
+
## Core Rule
|
|
6
|
+
|
|
7
|
+
After modifying agents, skills, or guides: run full verification before committing AND pushing. Never ask to commit/push before `mgr-sauron:watch` passes.
|
|
8
|
+
|
|
9
|
+
Every `git push` requires: `mgr-sauron:watch` → all pass → `git push`
|
|
10
|
+
|
|
11
|
+
## Verification Phases
|
|
12
|
+
|
|
13
|
+
### Phase 1: Manager Verification (5 rounds)
|
|
14
|
+
|
|
15
|
+
| Round | Actions |
|
|
16
|
+
|-------|---------|
|
|
17
|
+
| 1-2 | mgr-supplier:audit, mgr-updater:docs (sync check), fix issues |
|
|
18
|
+
| 3-4 | Re-verify mgr-supplier:audit + re-run mgr-updater:docs, fix remaining |
|
|
19
|
+
| 5 | Final: all counts match, frontmatter valid, skill refs exist, memory scopes valid, routing patterns updated |
|
|
20
|
+
|
|
21
|
+
Also run: mgr-claude-code-bible:verify (official spec compliance)
|
|
22
|
+
|
|
23
|
+
### Phase 2: Deep Review (3 rounds)
|
|
24
|
+
|
|
25
|
+
| Round | Focus |
|
|
26
|
+
|-------|-------|
|
|
27
|
+
| 1 | Workflow alignment: routing skills have complete agent mappings |
|
|
28
|
+
| 2 | References: no orphans, no circular refs, valid skill/memory refs |
|
|
29
|
+
| 3 | Philosophy: R006 separation, R009 parallel, R010 delegation, R007/R008 identification |
|
|
30
|
+
|
|
31
|
+
### Phase 3: Wiki Sync Verification
|
|
32
|
+
|
|
33
|
+
| Check | Action |
|
|
34
|
+
|-------|--------|
|
|
35
|
+
| Missing pages | Source entities without wiki pages → run `/omcodex:wiki` |
|
|
36
|
+
| Stale pages | Source modification date newer than wiki `updated` field → run `/omcodex:wiki ingest <path>` |
|
|
37
|
+
| Broken cross-refs | Wiki links pointing to non-existent pages → run `/omcodex:wiki lint` |
|
|
38
|
+
| index.md accuracy | Wiki index page count matches actual page count |
|
|
39
|
+
|
|
40
|
+
Wiki verification is also enforced by CI (`.github/workflows/wiki-sync.yml`).
|
|
41
|
+
|
|
42
|
+
### Phase 4: Fix all discovered issues
|
|
43
|
+
|
|
44
|
+
### Phase 5: Commit via mgr-gitnerd
|
|
45
|
+
|
|
46
|
+
### Phase 6: Push via mgr-gitnerd (only after sauron passes)
|
|
47
|
+
|
|
48
|
+
## Self-Check — 6-point commit check + 3-point push check. See full checklist via Read tool.
|
|
49
|
+
|
|
50
|
+
<!-- DETAIL: Self-Check Before Commit and Push
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
╔══════════════════════════════════════════════════════════════════╗
|
|
54
|
+
║ BEFORE COMMITTING, ASK YOURSELF: ║
|
|
55
|
+
║ ║
|
|
56
|
+
║ 1. Did I complete all 5 rounds of manager verification? ║
|
|
57
|
+
║ 2. Did I complete all 3 rounds of deep review? ║
|
|
58
|
+
║ 3. Did I fix all discovered issues? ║
|
|
59
|
+
║ 4. Are all counts matching across all sources? ║
|
|
60
|
+
║ 5. Am I delegating to mgr-gitnerd for the commit? ║
|
|
61
|
+
║ 6. Are wiki pages in sync with source changes? ║
|
|
62
|
+
║ ║
|
|
63
|
+
║ If NO to any → wait until verification completes ║
|
|
64
|
+
╚══════════════════════════════════════════════════════════════════╝
|
|
65
|
+
|
|
66
|
+
╔══════════════════════════════════════════════════════════════════╗
|
|
67
|
+
║ BEFORE PUSHING, ASK YOURSELF: ║
|
|
68
|
+
║ ║
|
|
69
|
+
║ 1. Did mgr-sauron:watch complete successfully? ║
|
|
70
|
+
║ 2. Were all issues from sauron verification fixed? ║
|
|
71
|
+
║ 3. Am I delegating to mgr-gitnerd for the push? ║
|
|
72
|
+
║ ║
|
|
73
|
+
║ If NO to any → wait until sauron verification passes ║
|
|
74
|
+
║ ║
|
|
75
|
+
║ Sauron verification is required for all pushes. ║
|
|
76
|
+
╚══════════════════════════════════════════════════════════════════╝
|
|
77
|
+
```
|
|
78
|
+
-->
|
|
79
|
+
|
|
80
|
+
## When Required
|
|
81
|
+
|
|
82
|
+
Any change to: agents, agent frontmatter, skills, guides, routing patterns, rules, wiki pages.
|
|
83
|
+
|
|
84
|
+
## Quick Verification Commands — agent/skill/guide/wiki counts via ls/find/wc. See commands via Read tool.
|
|
85
|
+
|
|
86
|
+
<!-- DETAIL: Quick Verification Commands
|
|
87
|
+
|
|
88
|
+
Key checks: agent count (`ls .codex/agents/*.md | wc -l`), skill count (`find .codex/skills -name "SKILL.md" | wc -l`), guide count (`find guides -mindepth 1 -maxdepth 1 -type d | wc -l`), wiki page count (`find wiki -name "*.md" ! -name "index.md" ! -name "log.md" | wc -l`).
|
|
89
|
+
|
|
90
|
+
Full verification bash scripts:
|
|
91
|
+
```bash
|
|
92
|
+
# Agent count check
|
|
93
|
+
ls .codex/agents/*.md | wc -l
|
|
94
|
+
|
|
95
|
+
# Skill count check
|
|
96
|
+
find .codex/skills -name "SKILL.md" | wc -l
|
|
97
|
+
|
|
98
|
+
# Frontmatter validation (check for missing YAML headers)
|
|
99
|
+
for f in .codex/agents/*.md; do head -1 "$f" | grep -q "^---" || echo "MISSING FRONTMATTER: $f"; done
|
|
100
|
+
|
|
101
|
+
# Check for agents with invalid skill references
|
|
102
|
+
for f in .codex/agents/*.md; do
|
|
103
|
+
grep "^skills:" -A 10 "$f" | grep " - " | sed 's/.*- //' | while read skill; do
|
|
104
|
+
[ -f ".codex/skills/$skill/SKILL.md" ] || echo "INVALID SKILL REF in $f: $skill"
|
|
105
|
+
done
|
|
106
|
+
done
|
|
107
|
+
|
|
108
|
+
# Routing skill pattern coverage
|
|
109
|
+
grep -c "agent_patterns:" .codex/skills/secretary-routing/SKILL.md
|
|
110
|
+
grep -c "agent_patterns:" .codex/skills/dev-lead-routing/SKILL.md
|
|
111
|
+
grep -c "agent_patterns:" .codex/skills/qa-lead-routing/SKILL.md
|
|
112
|
+
|
|
113
|
+
# Memory field validation
|
|
114
|
+
for f in .codex/agents/*.md; do
|
|
115
|
+
mem=$(grep "^memory:" "$f" | awk '{print $2}')
|
|
116
|
+
if [ -n "$mem" ] && [ "$mem" != "project" ] && [ "$mem" != "user" ] && [ "$mem" != "local" ]; then
|
|
117
|
+
echo "INVALID MEMORY SCOPE in $f: $mem"
|
|
118
|
+
fi
|
|
119
|
+
done
|
|
120
|
+
|
|
121
|
+
# Hook count check
|
|
122
|
+
ls .codex/hooks/*.json 2>/dev/null | wc -l
|
|
123
|
+
|
|
124
|
+
# Context count check
|
|
125
|
+
ls .codex/contexts/*.md 2>/dev/null | wc -l
|
|
126
|
+
|
|
127
|
+
# Guide count check
|
|
128
|
+
find guides -mindepth 1 -maxdepth 1 -type d | wc -l
|
|
129
|
+
|
|
130
|
+
# Agent name accuracy (compare AGENTS.md table with actual files)
|
|
131
|
+
ls .codex/agents/*.md | xargs -I{} basename {} .md | sort > /tmp/actual-agents.txt
|
|
132
|
+
|
|
133
|
+
# Slash command skill existence
|
|
134
|
+
for cmd in $(grep "^| \`/" AGENTS.md | sed 's/.*`\///' | sed 's/`.*//' | sed 's/ .*//')
|
|
135
|
+
do
|
|
136
|
+
[ -d ".codex/skills/$cmd" ] || echo "MISSING SKILL: $cmd"
|
|
137
|
+
done
|
|
138
|
+
|
|
139
|
+
# Routing skill completeness check
|
|
140
|
+
ls -d .codex/skills/*-routing 2>/dev/null | xargs -I{} basename {} | sort
|
|
141
|
+
|
|
142
|
+
# Verify routing skill names in AGENTS.md
|
|
143
|
+
grep -oP '(secretary|dev-lead|de-lead|qa-lead)-routing' AGENTS.md | sort -u
|
|
144
|
+
```
|
|
145
|
+
-->
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# [MUST] Tool Usage Identification Rules
|
|
2
|
+
|
|
3
|
+
> **Priority**: MUST | **ID**: R008
|
|
4
|
+
|
|
5
|
+
## Core Rule
|
|
6
|
+
|
|
7
|
+
Every tool call MUST be prefixed with agent and model identification:
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
[agent-name][model] → Tool: <tool-name>
|
|
11
|
+
[agent-name][model] → Target: <file/path/url>
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
For parallel calls: list ALL identifications BEFORE the tool calls.
|
|
15
|
+
|
|
16
|
+
### Common Violations to Avoid
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
❌ Missing: tool call with no identification prefix
|
|
20
|
+
✓ Correct: [agent-name][model] → Tool: WebFetch
|
|
21
|
+
[agent-name][model] → Fetching: url
|
|
22
|
+
<tool_call>...</tool_call>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
<!-- DETAIL: Full violation examples
|
|
26
|
+
Incorrect: Calling tools without identification — no [agent][model] prefix before tool_call
|
|
27
|
+
Incorrect: Missing model — [secretary] → Tool: WebFetch (missing [model])
|
|
28
|
+
Correct: [secretary][opus] → Tool: WebFetch / [secretary][opus] → Fetching: url / then tool_call
|
|
29
|
+
|
|
30
|
+
Incorrect parallel: tool_call(url1), tool_call(url2), tool_call(cmd) — no identification
|
|
31
|
+
Correct parallel: list ALL [agent][model] → Tool/Fetching/Running lines FIRST, then all tool_calls
|
|
32
|
+
-->
|
|
33
|
+
|
|
34
|
+
## Models
|
|
35
|
+
|
|
36
|
+
| Model | Use |
|
|
37
|
+
|-------|-----|
|
|
38
|
+
| `opus` | Complex reasoning, architecture |
|
|
39
|
+
| `sonnet` | General tasks, code generation (default) |
|
|
40
|
+
| `haiku` | Fast simple tasks, file search |
|
|
41
|
+
|
|
42
|
+
## Tool Categories
|
|
43
|
+
|
|
44
|
+
| Category | Tools | Verb |
|
|
45
|
+
|----------|-------|------|
|
|
46
|
+
| File Read | Read, Glob, Grep | Reading / Searching |
|
|
47
|
+
| File Write | Write, Edit | Writing / Editing |
|
|
48
|
+
| Network | WebFetch | Fetching |
|
|
49
|
+
| Execution | Bash, Agent | Running / Spawning |
|
|
50
|
+
|
|
51
|
+
## Agent Tool Format
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
subagent_type:model → description
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
`subagent_type` MUST match actual Agent tool parameter. Custom names not allowed.
|
|
58
|
+
|
|
59
|
+
## Parallel Spawn Prefix Rule
|
|
60
|
+
|
|
61
|
+
When spawning 2+ agents in parallel, each agent's `description` parameter MUST include a `[N]` prefix (1-indexed) to enable correlation with the Running display:
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
Agent(description: "[1] Go code review", subagent_type: "lang-golang-expert")
|
|
65
|
+
Agent(description: "[2] Python code review", subagent_type: "lang-python-expert")
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Single agent spawns do NOT use the `[N]` prefix.
|
|
69
|
+
|
|
70
|
+
This ensures the Running display:
|
|
71
|
+
```
|
|
72
|
+
⏺ Running 2 agents… (ctrl+o to expand)
|
|
73
|
+
├─ [1] Go code review · ...
|
|
74
|
+
└─ [2] Python code review · ...
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
matches the spawn announcement:
|
|
78
|
+
```
|
|
79
|
+
[secretary][opus] → Spawning:
|
|
80
|
+
[1] lang-golang-expert:sonnet → Go code review
|
|
81
|
+
[2] lang-python-expert:sonnet → Python code review
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
## Example
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
[mgr-creator][sonnet] → Write: .codex/agents/new-agent.md
|
|
88
|
+
[secretary][opus] → Spawning:
|
|
89
|
+
[1] lang-golang-expert:sonnet → Go code review
|
|
90
|
+
[2] lang-python-expert:sonnet → Python code review
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Parallel spawn description parameter:
|
|
94
|
+
```
|
|
95
|
+
Agent(description: "[1] Go code review", subagent_type: "lang-golang-expert", ...)
|
|
96
|
+
Agent(description: "[2] Python code review", subagent_type: "lang-python-expert", ...)
|
|
97
|
+
```
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# [SHOULD] Ecomode Rules
|
|
2
|
+
|
|
3
|
+
> **Priority**: SHOULD | **ID**: R013
|
|
4
|
+
|
|
5
|
+
## Activation
|
|
6
|
+
|
|
7
|
+
Auto-activates when: 4+ parallel tasks, batch operations, 80%+ context usage, or explicit "ecomode on".
|
|
8
|
+
|
|
9
|
+
## Behaviors
|
|
10
|
+
|
|
11
|
+
**Compact Output**: Agents return `status + summary (1-2 sentences) + key_data only`. Skip intermediate steps, verbose explanations, repeated context, full file contents.
|
|
12
|
+
|
|
13
|
+
**Aggregation Format**:
|
|
14
|
+
```
|
|
15
|
+
[Batch Complete] {n}/{total}
|
|
16
|
+
├── {agent}: ✓/✗/⚠ {summary}
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
**Compression**: File lists -> count only (unless < 5), error traces -> first/last 3 lines, code -> path:line ref only.
|
|
20
|
+
|
|
21
|
+
## Config
|
|
22
|
+
|
|
23
|
+
```yaml
|
|
24
|
+
ecomode:
|
|
25
|
+
threshold: 4
|
|
26
|
+
result_format: summary
|
|
27
|
+
max_result_length: 200
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Example
|
|
31
|
+
|
|
32
|
+
Normal: Full agent header + step-by-step analysis + detailed results.
|
|
33
|
+
Ecomode: `[lang-golang-expert] ✓ src/main.go reviewed: 1 naming issue (handle_error -> handleError)`
|
|
34
|
+
|
|
35
|
+
## Override
|
|
36
|
+
|
|
37
|
+
Disable with: "ecomode off", "verbose mode", or "show full details".
|
|
38
|
+
|
|
39
|
+
## Input Context Pruning — Active removal of irrelevant content. See full spec via Read tool.
|
|
40
|
+
|
|
41
|
+
<!-- DETAIL: Input Context Pruning
|
|
42
|
+
|
|
43
|
+
Active removal of irrelevant retrieved content from agent context. Complements output compression by managing the input side of token budget.
|
|
44
|
+
|
|
45
|
+
> **Terminology**: "Input Context Pruning" (R013) manages retrieved chunks during a task. "Memory Pruning" (R011) manages behavioral memory across sessions. These are distinct concepts.
|
|
46
|
+
|
|
47
|
+
### Pruning Triggers
|
|
48
|
+
|
|
49
|
+
| Trigger | Condition | Action |
|
|
50
|
+
|---------|-----------|--------|
|
|
51
|
+
| Search overflow | Retrieved chunks > 10 | Retain top-K by relevance, prune rest |
|
|
52
|
+
| Context pressure | Context usage > 50% | Summarize oldest/lowest-relevance chunks |
|
|
53
|
+
| Multi-hop intermediate | Between retrieval hops | Replace previous hop raw results with summary |
|
|
54
|
+
|
|
55
|
+
### Pruning Strategy
|
|
56
|
+
|
|
57
|
+
| Strategy | When | Behavior |
|
|
58
|
+
|----------|------|----------|
|
|
59
|
+
| **Retain** | Directly relevant code/docs | Keep as-is |
|
|
60
|
+
| **Summarize** | Background context, prior hop results | Replace with 1-2 line summary |
|
|
61
|
+
| **Drop** | Search noise, duplicates, already-reflected info | Remove entirely |
|
|
62
|
+
|
|
63
|
+
### Rules
|
|
64
|
+
|
|
65
|
+
- Pruning is irreversible — generate summary BEFORE dropping original
|
|
66
|
+
- Prune at document/chunk level, not mid-sentence
|
|
67
|
+
- When in doubt, Summarize rather than Drop
|
|
68
|
+
- Track pruning decisions: `[Pruned] {N} chunks → {M} retained, {K} summarized, {J} dropped`
|
|
69
|
+
-->
|
|
70
|
+
|
|
71
|
+
## Context Budget Management — Task-type-aware thresholds (research 40%, implementation 50%, review 60%, management 70%, general 80%). See full spec via Read tool.
|
|
72
|
+
|
|
73
|
+
<!-- DETAIL: Context Budget Management
|
|
74
|
+
|
|
75
|
+
Task-type-aware context thresholds that trigger ecomode earlier for context-heavy operations.
|
|
76
|
+
|
|
77
|
+
### Task Type Thresholds
|
|
78
|
+
|
|
79
|
+
| Task Type | Context Trigger | Rationale |
|
|
80
|
+
|-----------|----------------|-----------|
|
|
81
|
+
| Research (/research, multi-team) | 40% | High context consumption from parallel team results |
|
|
82
|
+
| Implementation (code generation) | 50% | Moderate context for code + test output |
|
|
83
|
+
| Review (code review, audit) | 60% | Moderate context for diff analysis |
|
|
84
|
+
| Management (git, deploy, CI) | 70% | Lower context needs |
|
|
85
|
+
| General (default) | 80% | Standard threshold |
|
|
86
|
+
|
|
87
|
+
### Detection
|
|
88
|
+
|
|
89
|
+
Task type is inferred from active context:
|
|
90
|
+
- **Research**: `/research` skill active, 4+ parallel agents
|
|
91
|
+
- **Implementation**: Write/Edit tools dominant, code files targeted
|
|
92
|
+
- **Review**: Read/Grep dominant, review/audit skill active
|
|
93
|
+
- **Management**: git/gh commands, CI/CD operations
|
|
94
|
+
- **General**: No specific pattern detected
|
|
95
|
+
|
|
96
|
+
### Budget Advisor Hook
|
|
97
|
+
|
|
98
|
+
The `context-budget-advisor.sh` hook monitors context usage and emits warnings when task-specific thresholds are approached:
|
|
99
|
+
|
|
100
|
+
```
|
|
101
|
+
[Context Budget] Task: research | Threshold: 40% | Current: 38%
|
|
102
|
+
[Context Budget] ⚠ Approaching budget limit — consider /compact or ecomode
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### Integration
|
|
106
|
+
|
|
107
|
+
- Works with existing ecomode activation (R013)
|
|
108
|
+
- Does NOT override explicit user settings
|
|
109
|
+
- Advisory only — never blocks operations
|
|
110
|
+
- Context percentage from statusline data when available
|
|
111
|
+
-->
|
|
112
|
+
|
|
113
|
+
## Token Guardian Coexistence — R013 context budget (usage-based) + cc-token-saver Token Guardian (time-based) can run simultaneously.
|
|
114
|
+
|
|
115
|
+
<!-- DETAIL: Token Guardian Coexistence (cc-token-saver)
|
|
116
|
+
|
|
117
|
+
| Component | Trigger | Scope |
|
|
118
|
+
|-----------|---------|-------|
|
|
119
|
+
| `context-budget-advisor.sh` (R013) | Context usage % approaching threshold | In-session budget |
|
|
120
|
+
| Token Guardian (cc-token-saver) | 1h cache TTL idle detection | Cross-session cost |
|
|
121
|
+
|
|
122
|
+
Both can run simultaneously — different triggers, complementary coverage. R013's context budget is usage-based (approaching limit), Token Guardian is time-based (idle cache expiry).
|
|
123
|
+
-->
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# [SHOULD] Error Handling Rules
|
|
2
|
+
|
|
3
|
+
> **Priority**: SHOULD | **ID**: R004
|
|
4
|
+
|
|
5
|
+
## Error Classification
|
|
6
|
+
|
|
7
|
+
| Level | Symptom | Response |
|
|
8
|
+
|-------|---------|----------|
|
|
9
|
+
| Warning | Task completes but needs attention | Output warning, continue |
|
|
10
|
+
| Error | Current task fails, others possible | Stop task, report cause, suggest alternative |
|
|
11
|
+
| Critical | Cannot proceed at all | Stop all, preserve state, report immediately |
|
|
12
|
+
|
|
13
|
+
## Error Report Format
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
[Error] {type} — Location: {file:line} — Cause: {cause} — Impact: {effect}
|
|
17
|
+
Attempted: 1. {try1} -> Failed 2. {try2} -> Failed
|
|
18
|
+
Recommended: {action1}, {action2}
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Recovery
|
|
22
|
+
|
|
23
|
+
| Type | Strategy |
|
|
24
|
+
|------|----------|
|
|
25
|
+
| Retryable | Retry up to 3x with backoff (1s, 2s, 4s), then report |
|
|
26
|
+
| Non-recoverable | Save state, rollback if possible, detailed report, wait for user |
|
|
27
|
+
|
|
28
|
+
## Validation
|
|
29
|
+
|
|
30
|
+
| When | Checks |
|
|
31
|
+
|------|--------|
|
|
32
|
+
| Before action | Target exists, permissions available, dependencies met |
|
|
33
|
+
| After action | Expected = actual, file integrity, no side effects |
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# [SHOULD] HUD Statusline Rules
|
|
2
|
+
|
|
3
|
+
> **Priority**: SHOULD | **ID**: R012
|
|
4
|
+
|
|
5
|
+
## Two-System Architecture
|
|
6
|
+
|
|
7
|
+
| Aspect | HUD Events | Statusline API |
|
|
8
|
+
|--------|-----------|----------------|
|
|
9
|
+
| Channel | stderr (hooks) | stdout (dedicated statusline) |
|
|
10
|
+
| Location | Inline in conversation log | Persistent bar at screen bottom |
|
|
11
|
+
| Trigger | PreToolUse (Agent/Task matcher) | Message update cycle (~300ms) |
|
|
12
|
+
| Role | Event notifications | Persistent session status |
|
|
13
|
+
|
|
14
|
+
## HUD Events (Hook-based)
|
|
15
|
+
|
|
16
|
+
Format: `─── [Spawn] {subagent_type}:{model} | {description} ───` — implemented in `.codex/hooks/hooks.json` (PreToolUse → Agent/Task matcher). Display for multi-step/parallel/long-running ops only.
|
|
17
|
+
|
|
18
|
+
<!-- DETAIL: HUD Events full spec
|
|
19
|
+
### When to Display: Multi-step tasks, parallel execution, long-running operations. Skip for single brief operations.
|
|
20
|
+
### Parallel Display:
|
|
21
|
+
─── [Agent] secretary | [Parallel] 4 ───
|
|
22
|
+
[1] Agent(mgr-creator):sonnet → Create agent
|
|
23
|
+
[2] Agent(lang-golang-expert):haiku → Code review
|
|
24
|
+
-->
|
|
25
|
+
|
|
26
|
+
## Statusline API (Command-based)
|
|
27
|
+
|
|
28
|
+
Format: `{Cost} | {project} | {branch} | RL:{rate_limit}% {countdown} | WL:{weekly_limit}% {countdown} | CTX:{usage}%`
|
|
29
|
+
|
|
30
|
+
Config in `.codex/settings.local.json`: `statusLine.type: "command"`, `statusLine.command: ".codex/statusline.sh"`. Requires CC v2.1.80+ for RL/WL segments. `refreshInterval` setting (v2.1.97+): Auto-refresh interval in seconds for the status line command. Set in `statusLine.refreshInterval` in settings.json.
|
|
31
|
+
|
|
32
|
+
<!-- DETAIL: Statusline configuration JSON and color coding
|
|
33
|
+
```json
|
|
34
|
+
{ "statusLine": { "type": "command", "command": ".codex/statusline.sh", "padding": 0 } }
|
|
35
|
+
```
|
|
36
|
+
Color coding: Cost (<$1 green, $1-4.99 yellow, >=5 red), RL/WL (<50% green, 50-79% yellow, >=80% red), CTX (<60% green, 60-79% yellow, >=80% red).
|
|
37
|
+
Countdown format: >=1d → "{d}d{h}h", >=1h → "{h}h{m}m", <1h → "{m}m", unavailable → omitted.
|
|
38
|
+
RL/WL segments omitted on CC older than v2.1.80.
|
|
39
|
+
-->
|
|
40
|
+
|
|
41
|
+
## Integration
|
|
42
|
+
|
|
43
|
+
Integrates with R007 (Agent ID), R008 (Tool ID), R009 (Parallel).
|
|
44
|
+
|
|
45
|
+
## External Plugin Statusline Conflict
|
|
46
|
+
|
|
47
|
+
| Plugin | Component | Resolution |
|
|
48
|
+
|--------|-----------|------------|
|
|
49
|
+
| cc-token-saver | Live Status Line | R012 `.codex/statusline.sh` has priority. Disable cc-token-saver statusline to avoid duplicate status bars. |
|
|
50
|
+
|
|
51
|
+
Internal statusline (`.codex/statusline.sh`) is the primary status display. External plugin status lines are supplementary or disabled.
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# [SHOULD] Interaction Rules
|
|
2
|
+
|
|
3
|
+
> **Priority**: SHOULD | **ID**: R003
|
|
4
|
+
|
|
5
|
+
## Response Principles
|
|
6
|
+
|
|
7
|
+
| Principle | Do | Don't |
|
|
8
|
+
|-----------|-----|-------|
|
|
9
|
+
| Brevity | Key info first, answer only what's asked | Over-explanation, repetitive confirmation |
|
|
10
|
+
| Clarity | Specific expressions, executable code | Abstract descriptions, "maybe"/"probably" |
|
|
11
|
+
| Transparency | State actions, report changes, acknowledge uncertainty | Hide actions, present guesses as facts |
|
|
12
|
+
|
|
13
|
+
## Status Format
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
[Start] {task name}
|
|
17
|
+
[Progress] {current step} ({n}/{total})
|
|
18
|
+
[Done] {task name} — Result: {summary}
|
|
19
|
+
[Failed] {task name} — Cause: {reason} — Alternative: {solutions}
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Request Handling
|
|
23
|
+
|
|
24
|
+
| Type | Action |
|
|
25
|
+
|------|--------|
|
|
26
|
+
| Clear | Execute immediately |
|
|
27
|
+
| Ambiguous | `[Confirm] Understood "{request}" as {interpretation}. Proceed?` |
|
|
28
|
+
| Risky | `[Warning] This action has {risk}. Continue? Yes: {action} / No: Cancel` |
|
|
29
|
+
|
|
30
|
+
## Multiple Tasks
|
|
31
|
+
|
|
32
|
+
- Dependent: Sequential
|
|
33
|
+
- Independent: Parallel allowed
|
|
34
|
+
- Report: `[Task 1/3] Done` / `[Task 2/3] In progress...` / `[Task 3/3] Pending`
|
|
35
|
+
|
|
36
|
+
## Output Styles
|
|
37
|
+
|
|
38
|
+
| Style | Trigger | Behavior |
|
|
39
|
+
|-------|---------|----------|
|
|
40
|
+
| `concise` | effort: low, batch operations | Key result only, no preamble, no elaboration |
|
|
41
|
+
| `balanced` | effort: medium, general tasks | Summary + key details, minimal explanation |
|
|
42
|
+
| `explanatory` | effort: high, complex/learning tasks | Full reasoning, examples, trade-off analysis |
|
|
43
|
+
|
|
44
|
+
### Style Selection Priority
|
|
45
|
+
|
|
46
|
+
1. User explicit request ("be concise", "explain in detail") → Override
|
|
47
|
+
2. Ecomode active → Force `concise`
|
|
48
|
+
3. Agent effort level → Map to corresponding style
|
|
49
|
+
4. Default → `balanced`
|
|
50
|
+
|
|
51
|
+
### Style Examples — See concise/balanced/explanatory examples via Read tool.
|
|
52
|
+
|
|
53
|
+
<!-- DETAIL: Style Examples
|
|
54
|
+
**Concise** (effort: low):
|
|
55
|
+
```
|
|
56
|
+
✓ 3 files updated, 0 errors
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**Balanced** (effort: medium):
|
|
60
|
+
```
|
|
61
|
+
[Done] Updated authentication module
|
|
62
|
+
- Modified: auth.ts, middleware.ts, config.ts
|
|
63
|
+
- Added JWT validation with 24h expiry
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
**Explanatory** (effort: high):
|
|
67
|
+
```
|
|
68
|
+
[Done] Updated authentication module — Result: JWT-based auth with refresh tokens
|
|
69
|
+
|
|
70
|
+
Changes:
|
|
71
|
+
1. auth.ts:45 — Added JWT signing with RS256 algorithm (chosen over HS256 for key rotation support)
|
|
72
|
+
2. middleware.ts:12 — New auth middleware validates token and attaches user context
|
|
73
|
+
3. config.ts:8 — Added TOKEN_EXPIRY (24h) and REFRESH_EXPIRY (7d) constants
|
|
74
|
+
|
|
75
|
+
Trade-offs: RS256 is ~10x slower than HS256 but enables asymmetric key management.
|
|
76
|
+
```
|
|
77
|
+
-->
|