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,250 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: scout
|
|
3
|
+
description: Analyze external URL to evaluate fit with oh-my-customcodex project and auto-create GitHub issue with verdict
|
|
4
|
+
scope: core
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
user-invocable: true
|
|
7
|
+
argument-hint: "<url>"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# /scout — External Link Analysis
|
|
11
|
+
|
|
12
|
+
Analyze an external URL (tech blog, tool, library, methodology) to evaluate its fit with the oh-my-customcodex project and auto-create a GitHub issue with a structured verdict.
|
|
13
|
+
|
|
14
|
+
## Usage
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
/scout <url>
|
|
18
|
+
/scout https://news.hada.io/topic?id=27673
|
|
19
|
+
/scout https://github.com/user/repo
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Verdict Taxonomy
|
|
23
|
+
|
|
24
|
+
| Verdict | Meaning | Label | Follow-up |
|
|
25
|
+
|---------|---------|-------|-----------|
|
|
26
|
+
| **INTERNALIZE** | Aligns with project philosophy; should become a skill/agent/guide | `scout:internalize` + `P1`/`P2`/`P3` | `/research` or direct implementation |
|
|
27
|
+
| **INTEGRATE** | Useful but best kept as external dependency | `scout:integrate` + `P2`/`P3` | Plugin/MCP integration review |
|
|
28
|
+
| **SKIP** | Irrelevant or duplicates existing functionality | `scout:skip` | Issue created then closed |
|
|
29
|
+
|
|
30
|
+
## Pre-flight Guards
|
|
31
|
+
|
|
32
|
+
### Guard 1: URL Validity (GATE)
|
|
33
|
+
|
|
34
|
+
Before any work, validate the URL:
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
# Check URL is syntactically valid
|
|
38
|
+
echo "$URL" | grep -qE '^https?://'
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
If invalid: `[Pre-flight] GATE: Invalid or unreachable URL. Please check and retry.` — abort.
|
|
42
|
+
|
|
43
|
+
### Guard 2: Duplicate Scout (WARN)
|
|
44
|
+
|
|
45
|
+
Search existing GitHub issues for prior scout reports on the same URL domain:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
DOMAIN=$(echo "$URL" | sed 's|https\?://||' | cut -d'/' -f1)
|
|
49
|
+
gh issue list --state all --label "scout:internalize,scout:integrate,scout:skip" \
|
|
50
|
+
--json number,title,body --jq ".[] | select(.body | contains(\"$DOMAIN\"))" 2>/dev/null
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
If found: `[Pre-flight] WARN: Similar URL already scouted in issue #N. Proceed anyway? [Y/n]`
|
|
54
|
+
|
|
55
|
+
## Display Format
|
|
56
|
+
|
|
57
|
+
Before execution, show the plan:
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
[Scout] {url}
|
|
61
|
+
├── Phase 1: Fetch & Summarize
|
|
62
|
+
├── Phase 2: Load Project Philosophy
|
|
63
|
+
├── Phase 3: Fit Analysis (sonnet)
|
|
64
|
+
└── Phase 4: Issue Creation
|
|
65
|
+
|
|
66
|
+
Estimated: ~1 min | Cost: ~$0.5-1.5
|
|
67
|
+
Execute? [Y/n]
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Workflow
|
|
71
|
+
|
|
72
|
+
### Phase 1: Fetch & Summarize
|
|
73
|
+
|
|
74
|
+
1. `WebFetch(url)` — retrieve page content
|
|
75
|
+
2. Extract core information:
|
|
76
|
+
- Title and purpose
|
|
77
|
+
- Key technology / methodology
|
|
78
|
+
- Approach and principles
|
|
79
|
+
3. If fetch fails — report error, abort
|
|
80
|
+
|
|
81
|
+
### Phase 2: Load Project Philosophy
|
|
82
|
+
|
|
83
|
+
1. `Read(AGENTS.md)` — extract architecture philosophy:
|
|
84
|
+
- Compilation metaphor (source -> build -> artifact)
|
|
85
|
+
- Separation of concerns (R006)
|
|
86
|
+
- Dynamic agent creation ("no expert? create one")
|
|
87
|
+
- Skill/agent/guide/rule structure
|
|
88
|
+
2. `Read(README.md)` — extract project overview and component inventory
|
|
89
|
+
3. `Glob(.codex/skills/*/SKILL.md)` — list existing skills for overlap detection
|
|
90
|
+
|
|
91
|
+
### Phase 3: Fit Analysis
|
|
92
|
+
|
|
93
|
+
Spawn 1 sonnet agent with the following analysis prompt.
|
|
94
|
+
|
|
95
|
+
> **Permission Mode**: When spawning the analysis agent, pass `mode: "bypassPermissions"` in the Agent tool call if the session uses bypassPermissions. Without explicit mode, CC defaults to `acceptEdits`.
|
|
96
|
+
|
|
97
|
+
**Inputs**:
|
|
98
|
+
- Fetched content summary (Phase 1)
|
|
99
|
+
- Project philosophy context (Phase 2)
|
|
100
|
+
- Existing skill list (Phase 2)
|
|
101
|
+
|
|
102
|
+
**Analysis dimensions**:
|
|
103
|
+
|
|
104
|
+
| Dimension | Question |
|
|
105
|
+
|-----------|----------|
|
|
106
|
+
| Philosophy alignment | Does it match the compilation metaphor, separation of concerns, "create experts on demand"? |
|
|
107
|
+
| Technical fit | Does it complement or overlap with existing skills/agents/guides? |
|
|
108
|
+
| Integration effort | How much work to internalize vs. use externally? |
|
|
109
|
+
| Value proposition | What concrete benefit does it bring to the project? |
|
|
110
|
+
|
|
111
|
+
**Agent prompt template**:
|
|
112
|
+
|
|
113
|
+
```
|
|
114
|
+
You are a project fit analyst. Given:
|
|
115
|
+
|
|
116
|
+
1. External content summary:
|
|
117
|
+
{phase1_summary}
|
|
118
|
+
|
|
119
|
+
2. Project philosophy:
|
|
120
|
+
{phase2_philosophy}
|
|
121
|
+
|
|
122
|
+
3. Existing skills ({skill_count} total):
|
|
123
|
+
{skill_list}
|
|
124
|
+
|
|
125
|
+
Analyze the external content against the project philosophy across 4 dimensions:
|
|
126
|
+
- Philosophy alignment
|
|
127
|
+
- Technical fit (overlap with existing skills?)
|
|
128
|
+
- Integration effort (XS/S/M/L)
|
|
129
|
+
- Value proposition
|
|
130
|
+
|
|
131
|
+
Return a structured verdict:
|
|
132
|
+
- verdict: INTERNALIZE | INTEGRATE | SKIP
|
|
133
|
+
- priority: P1 | P2 | P3
|
|
134
|
+
- rationale: 2-3 sentences
|
|
135
|
+
- philosophy_table: criterion/fit/rationale for each dimension
|
|
136
|
+
- recommendation: specific integration plan or skip reason
|
|
137
|
+
- next_steps: 2-3 actionable items
|
|
138
|
+
- escalation: true/false (INTERNALIZE + M/L effort = true)
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
**Output**: Structured verdict with rationale.
|
|
142
|
+
|
|
143
|
+
### Phase 4: Issue Creation
|
|
144
|
+
|
|
145
|
+
1. Ensure scout labels exist (defensive, idempotent):
|
|
146
|
+
```bash
|
|
147
|
+
gh label create "scout:internalize" --color "0E8A16" --description "Scout: should be internalized" 2>/dev/null || true
|
|
148
|
+
gh label create "scout:integrate" --color "1D76DB" --description "Scout: keep as external" 2>/dev/null || true
|
|
149
|
+
gh label create "scout:skip" --color "D4C5F9" --description "Scout: skip" 2>/dev/null || true
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
2. Create GitHub issue:
|
|
153
|
+
```bash
|
|
154
|
+
gh issue create \
|
|
155
|
+
--title "[scout:{verdict}] {content_title}" \
|
|
156
|
+
--label "scout:{verdict},P{n}" \
|
|
157
|
+
--body "{issue_body}"
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
3. If verdict is `SKIP`: auto-close the issue:
|
|
161
|
+
```bash
|
|
162
|
+
gh issue close {number} -c "Auto-closed: scout verdict is SKIP"
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### Issue Body Template
|
|
166
|
+
|
|
167
|
+
```markdown
|
|
168
|
+
## Scout Report: {title}
|
|
169
|
+
|
|
170
|
+
**Source**: {url}
|
|
171
|
+
**Verdict**: {INTERNALIZE / INTEGRATE / SKIP}
|
|
172
|
+
**Priority**: {P1 / P2 / P3}
|
|
173
|
+
|
|
174
|
+
## Summary
|
|
175
|
+
{2-3 sentence summary of the external content}
|
|
176
|
+
|
|
177
|
+
## Philosophy Alignment
|
|
178
|
+
| Criterion | Fit | Rationale |
|
|
179
|
+
|-----------|-----|-----------|
|
|
180
|
+
| Compilation metaphor | {check/cross} | {explanation} |
|
|
181
|
+
| Separation of concerns (R006) | {check/cross} | {explanation} |
|
|
182
|
+
| Dynamic agent creation | {check/cross} | {explanation} |
|
|
183
|
+
| Existing skill overlap | {check/cross} | {overlapping skills list} |
|
|
184
|
+
|
|
185
|
+
## Recommendation
|
|
186
|
+
{Specific integration plan — which skill/agent/guide to create, or why to skip}
|
|
187
|
+
|
|
188
|
+
## Next Steps
|
|
189
|
+
- [ ] {follow-up action 1}
|
|
190
|
+
- [ ] {follow-up action 2}
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
Generated by `/scout`
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
## Escalation
|
|
197
|
+
|
|
198
|
+
When verdict is `INTERNALIZE` and integration effort is M or L:
|
|
199
|
+
|
|
200
|
+
```
|
|
201
|
+
[Advisory] Deep analysis recommended.
|
|
202
|
+
└── Consider running: /research {url}
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
## Result Display
|
|
206
|
+
|
|
207
|
+
```
|
|
208
|
+
[Scout Complete] {title}
|
|
209
|
+
├── Verdict: {INTERNALIZE / INTEGRATE / SKIP}
|
|
210
|
+
├── Priority: {P1 / P2 / P3}
|
|
211
|
+
├── Issue: #{number}
|
|
212
|
+
└── Escalation: {/research recommended | none}
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
## Model Selection
|
|
216
|
+
|
|
217
|
+
| Phase | Model | Rationale |
|
|
218
|
+
|-------|-------|-----------|
|
|
219
|
+
| Phase 1 (Fetch) | orchestrator | Simple WebFetch, no agent needed |
|
|
220
|
+
| Phase 2 (Load) | orchestrator | Simple Read/Glob, no agent needed |
|
|
221
|
+
| Phase 3 (Analysis) | sonnet | Balanced reasoning for fit analysis |
|
|
222
|
+
| Phase 4 (Issue) | orchestrator | gh issue create via Bash |
|
|
223
|
+
|
|
224
|
+
## Integration
|
|
225
|
+
|
|
226
|
+
| Rule | How |
|
|
227
|
+
|------|-----|
|
|
228
|
+
| R009 | Single agent in Phase 3 — no parallelism needed |
|
|
229
|
+
| R010 | Orchestrator manages phases 1/2/4; analysis delegated to sonnet agent in Phase 3 |
|
|
230
|
+
| R015 | Display scout plan before execution (Display Format section) |
|
|
231
|
+
|
|
232
|
+
## When NOT to Use
|
|
233
|
+
|
|
234
|
+
| Scenario | Better Alternative |
|
|
235
|
+
|----------|--------------------|
|
|
236
|
+
| Deep multi-source research | `/research <url>` |
|
|
237
|
+
| Internal project analysis | `/omcodex:analysis` |
|
|
238
|
+
| Known tool evaluation | Direct agent conversation |
|
|
239
|
+
| Bulk URL analysis (5+) | `/research` with URL list |
|
|
240
|
+
|
|
241
|
+
## Differences from /research
|
|
242
|
+
|
|
243
|
+
| Aspect | /scout | /research |
|
|
244
|
+
|--------|--------|-----------|
|
|
245
|
+
| Purpose | Quick fit evaluation | Deep multi-dimensional analysis |
|
|
246
|
+
| Teams | 1 agent | 10 teams |
|
|
247
|
+
| Cost | ~$0.5-1.5 | ~$8-15 |
|
|
248
|
+
| Duration | 1-2 min | 10-20 min |
|
|
249
|
+
| Output | Issue with verdict | Full report with ADOPT/ADAPT/AVOID |
|
|
250
|
+
| When | First contact with new link | Deep dive after scout recommends |
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: sdd
|
|
3
|
+
description: Alias for sdd-dev — Spec-Driven Development workflow
|
|
4
|
+
scope: core
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
user-invocable: true
|
|
7
|
+
argument-hint: "[task description or leave empty for guided workflow]"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# SDD Skill (Alias)
|
|
11
|
+
|
|
12
|
+
This is an alias for the `sdd-dev` skill.
|
|
13
|
+
|
|
14
|
+
**Redirects to**: `.codex/skills/sdd-dev/SKILL.md`
|
|
15
|
+
|
|
16
|
+
See [sdd-dev](../sdd-dev/SKILL.md) for full documentation.
|
|
17
|
+
|
|
18
|
+
## Usage
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
/sdd [task description]
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Equivalent to `/sdd-dev [task description]`.
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: sdd-dev
|
|
3
|
+
description: Spec-Driven Development workflow — enforces sdd/ folder hierarchy with planning-first gates, current-state artifacts, and completion verification
|
|
4
|
+
scope: core
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
user-invocable: true
|
|
7
|
+
argument-hint: "[task description or leave empty for guided workflow]"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# SDD (Spec-Driven Development) Skill
|
|
11
|
+
|
|
12
|
+
Spec-Driven Development workflow that enforces the `sdd/` folder hierarchy. All development work proceeds through planning-first gates and produces current-state artifacts as completion evidence.
|
|
13
|
+
|
|
14
|
+
## Trigger Keywords
|
|
15
|
+
|
|
16
|
+
Invoke this skill when user requests:
|
|
17
|
+
- 개발해, 작업해, 구현해, 수정해, 고쳐, 리팩토링해, 테스트해, 배포해
|
|
18
|
+
- 화면명세서, 화면설계서, UI, 디자인, screen spec, screen design
|
|
19
|
+
- develop, implement, fix, refactor, build, deploy
|
|
20
|
+
|
|
21
|
+
## sdd/ Folder Hierarchy
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
sdd/
|
|
25
|
+
├── 01_planning/ # Requirements, constraints, stakeholder input
|
|
26
|
+
├── 02_plan/ # Execution plan, acceptance criteria, approach
|
|
27
|
+
├── 03_build/ # Current build state, implementation notes
|
|
28
|
+
├── 04_verify/ # Verification evidence, test results, residual risks
|
|
29
|
+
├── 05_operate/ # Deployment notes, runbooks (conditional)
|
|
30
|
+
└── 99_toolchain/ # Tool configs, scripts, environment setup
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**Key Principle**: These folders are **current-state artifacts**, not history archives. Each file reflects the current state of the work — update in place rather than appending new versions.
|
|
34
|
+
|
|
35
|
+
## Workflow
|
|
36
|
+
|
|
37
|
+
### Step 0: Activation Check
|
|
38
|
+
|
|
39
|
+
Verify `sdd/` folder exists in the project root:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
ls sdd/ 2>/dev/null || echo "sdd/ folder not found"
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
If `sdd/` does not exist:
|
|
46
|
+
1. Inform the user that SDD workflow requires a `sdd/` folder
|
|
47
|
+
2. Offer to create the folder structure: `mkdir -p sdd/{01_planning,02_plan,03_build,04_verify,05_operate,99_toolchain}`
|
|
48
|
+
3. Ask user to confirm before proceeding
|
|
49
|
+
|
|
50
|
+
If `sdd/` exists, continue to Step 1.
|
|
51
|
+
|
|
52
|
+
### Step 1: Planning Review (Gate)
|
|
53
|
+
|
|
54
|
+
**MUST complete before any coding begins.**
|
|
55
|
+
|
|
56
|
+
Read all relevant planning documents:
|
|
57
|
+
|
|
58
|
+
```
|
|
59
|
+
[SDD] Reading planning documents...
|
|
60
|
+
├── sdd/01_planning/ — requirements, constraints
|
|
61
|
+
└── sdd/99_toolchain/ — tool configs, environment
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Actions:
|
|
65
|
+
1. Read `sdd/01_planning/` contents (all .md files)
|
|
66
|
+
2. Read `sdd/99_toolchain/` if present
|
|
67
|
+
3. Identify: What is the task? What constraints exist? What is in scope?
|
|
68
|
+
4. If planning docs are empty or missing, prompt user to fill them before proceeding
|
|
69
|
+
|
|
70
|
+
**Gate**: If planning docs are absent or insufficient, pause and ask user to provide requirements. Do NOT proceed to plan phase without understanding the context.
|
|
71
|
+
|
|
72
|
+
### Step 2: Plan Phase
|
|
73
|
+
|
|
74
|
+
Create or update `sdd/02_plan/` with the execution plan.
|
|
75
|
+
|
|
76
|
+
Artifact to produce: `sdd/02_plan/current.md`
|
|
77
|
+
|
|
78
|
+
```markdown
|
|
79
|
+
# Execution Plan
|
|
80
|
+
|
|
81
|
+
## Task
|
|
82
|
+
{task description}
|
|
83
|
+
|
|
84
|
+
## Approach
|
|
85
|
+
{implementation strategy}
|
|
86
|
+
|
|
87
|
+
## Acceptance Criteria
|
|
88
|
+
- [ ] {criterion 1}
|
|
89
|
+
- [ ] {criterion 2}
|
|
90
|
+
- [ ] {criterion N}
|
|
91
|
+
|
|
92
|
+
## Out of Scope
|
|
93
|
+
- {what will NOT be done}
|
|
94
|
+
|
|
95
|
+
## Dependencies
|
|
96
|
+
- {prerequisite or dependency}
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
**Display**:
|
|
100
|
+
```
|
|
101
|
+
[SDD Plan] Created sdd/02_plan/current.md
|
|
102
|
+
├── Approach: {one-line summary}
|
|
103
|
+
├── Criteria: {N} acceptance criteria defined
|
|
104
|
+
└── Gate: Plan ready — proceeding to build
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### Step 3: Build Phase
|
|
108
|
+
|
|
109
|
+
Implement the changes. Update `sdd/03_build/` with current build state.
|
|
110
|
+
|
|
111
|
+
Artifact to produce or update: `sdd/03_build/current.md`
|
|
112
|
+
|
|
113
|
+
```markdown
|
|
114
|
+
# Build State
|
|
115
|
+
|
|
116
|
+
## Status
|
|
117
|
+
{In Progress | Complete}
|
|
118
|
+
|
|
119
|
+
## Implemented
|
|
120
|
+
- {file or component}: {what was done}
|
|
121
|
+
|
|
122
|
+
## Decisions Made
|
|
123
|
+
- {decision}: {rationale}
|
|
124
|
+
|
|
125
|
+
## Known Issues
|
|
126
|
+
- {issue}: {planned resolution}
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
During implementation:
|
|
130
|
+
- Follow the plan from Step 2
|
|
131
|
+
- Update `sdd/03_build/current.md` as work progresses
|
|
132
|
+
- Keep the artifact current (not a log — overwrite stale entries)
|
|
133
|
+
|
|
134
|
+
**Display**:
|
|
135
|
+
```
|
|
136
|
+
[SDD Build] Implementing changes...
|
|
137
|
+
[SDD Build] Updated sdd/03_build/current.md
|
|
138
|
+
└── Status: {In Progress | Complete}
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
### Step 4: Verify Phase
|
|
142
|
+
|
|
143
|
+
Run verification and update `sdd/04_verify/` with evidence.
|
|
144
|
+
|
|
145
|
+
Artifact to produce or update: `sdd/04_verify/current.md`
|
|
146
|
+
|
|
147
|
+
```markdown
|
|
148
|
+
# Verification Evidence
|
|
149
|
+
|
|
150
|
+
## Acceptance Criteria Results
|
|
151
|
+
- [x] {criterion 1}: {evidence}
|
|
152
|
+
- [x] {criterion 2}: {evidence}
|
|
153
|
+
- [ ] {criterion N}: {reason if not passing}
|
|
154
|
+
|
|
155
|
+
## Tests Run
|
|
156
|
+
- {test command or suite}: {result}
|
|
157
|
+
|
|
158
|
+
## Residual Risks
|
|
159
|
+
- {risk}: {severity} — {mitigation plan}
|
|
160
|
+
|
|
161
|
+
## Verdict
|
|
162
|
+
{Pass | Fail | Conditional Pass}
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
Actions:
|
|
166
|
+
1. Check each acceptance criterion from `sdd/02_plan/current.md`
|
|
167
|
+
2. Run applicable tests or verification commands
|
|
168
|
+
3. Document evidence (do NOT just say "tests pass" — include actual output or reference)
|
|
169
|
+
4. List residual risks honestly
|
|
170
|
+
|
|
171
|
+
**Gate**: If verdict is Fail, return to Step 3 (Build). Do NOT declare done with a Fail verdict.
|
|
172
|
+
|
|
173
|
+
**Display**:
|
|
174
|
+
```
|
|
175
|
+
[SDD Verify] Running verification...
|
|
176
|
+
[SDD Verify] Updated sdd/04_verify/current.md
|
|
177
|
+
├── Criteria: {N}/{total} passing
|
|
178
|
+
├── Residual risks: {count}
|
|
179
|
+
└── Verdict: {Pass | Fail | Conditional Pass}
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
### Step 5: Operate Phase (Conditional)
|
|
183
|
+
|
|
184
|
+
Only execute if deployment is in scope for this task.
|
|
185
|
+
|
|
186
|
+
Artifact to produce or update: `sdd/05_operate/current.md`
|
|
187
|
+
|
|
188
|
+
```markdown
|
|
189
|
+
# Operate State
|
|
190
|
+
|
|
191
|
+
## Deployment
|
|
192
|
+
- Environment: {target}
|
|
193
|
+
- Method: {how deployed}
|
|
194
|
+
- Timestamp: {when}
|
|
195
|
+
|
|
196
|
+
## Runbook
|
|
197
|
+
{steps to operate, restart, rollback}
|
|
198
|
+
|
|
199
|
+
## Monitoring
|
|
200
|
+
{what to watch, alerts, logs}
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
Skip this step if:
|
|
204
|
+
- Task is code-only (no deployment)
|
|
205
|
+
- User did not request deployment
|
|
206
|
+
- Deployment is handled by CI/CD automatically
|
|
207
|
+
|
|
208
|
+
### Step 6: Completion Gate
|
|
209
|
+
|
|
210
|
+
Before declaring `[Done]`, verify:
|
|
211
|
+
|
|
212
|
+
```
|
|
213
|
+
[SDD Done?] Checking completion gates...
|
|
214
|
+
├── sdd/02_plan/current.md — exists? {Y/N}
|
|
215
|
+
├── sdd/03_build/current.md — exists and current? {Y/N}
|
|
216
|
+
├── sdd/04_verify/current.md — exists and verdict Pass? {Y/N}
|
|
217
|
+
└── sdd/05_operate/current.md — exists (if deploy in scope)? {Y/N}
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
If any gate fails, complete the missing artifact before declaring done.
|
|
221
|
+
|
|
222
|
+
Final display:
|
|
223
|
+
```
|
|
224
|
+
[SDD Done] Task complete
|
|
225
|
+
├── Plan: sdd/02_plan/current.md
|
|
226
|
+
├── Build: sdd/03_build/current.md
|
|
227
|
+
├── Verify: sdd/04_verify/current.md (Verdict: Pass)
|
|
228
|
+
└── Artifacts are current-state — ready for next iteration
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
## Artifact Maintenance Rules
|
|
232
|
+
|
|
233
|
+
1. **Overwrite, don't append**: Update files in place. These are current-state docs, not logs.
|
|
234
|
+
2. **One file per folder**: `current.md` is the canonical artifact. Supplementary files are allowed but the main doc is always `current.md`.
|
|
235
|
+
3. **Checkboxes reflect reality**: Do NOT pre-check criteria. Update checkboxes as work is verified.
|
|
236
|
+
4. **Residual risks are honest**: List known risks even after passing. Hiding risks defeats the purpose.
|
|
237
|
+
|
|
238
|
+
## Integration with Other Skills
|
|
239
|
+
|
|
240
|
+
| Skill | When to Use Together |
|
|
241
|
+
|-------|---------------------|
|
|
242
|
+
| `/deep-plan` | Before `/sdd-dev` when requirements are ambiguous — use deep-plan to research, then sdd-dev to execute |
|
|
243
|
+
| `/structured-dev-cycle` | Alternative workflow without sdd/ folder — use sdd-dev when project uses sdd/ hierarchy |
|
|
244
|
+
| `/dev-review` | After Step 4 — use dev-review for additional code quality check |
|
|
245
|
+
| `/adversarial-review` | After Step 4 — use adversarial-review for security-sensitive changes |
|
|
246
|
+
|
|
247
|
+
## Example Usage
|
|
248
|
+
|
|
249
|
+
```
|
|
250
|
+
/sdd-dev add user authentication to the API
|
|
251
|
+
/sdd-dev implement pagination for the product list screen
|
|
252
|
+
/sdd-dev 화면명세서 기반으로 대시보드 UI 구현
|
|
253
|
+
/sdd-dev refactor the payment module
|
|
254
|
+
/sdd-dev # (no argument — guided workflow)
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
When no argument is provided, ask: "어떤 작업을 진행할까요? sdd/01_planning/ 의 요구사항을 기반으로 계획을 수립합니다."
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: sdd-development
|
|
3
|
+
description: Alias for sdd-dev — Spec-Driven Development workflow
|
|
4
|
+
scope: core
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
user-invocable: true
|
|
7
|
+
argument-hint: "[task description or leave empty for guided workflow]"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# SDD Development Skill (Alias)
|
|
11
|
+
|
|
12
|
+
This is an alias for the `sdd-dev` skill.
|
|
13
|
+
|
|
14
|
+
**Redirects to**: `.codex/skills/sdd-dev/SKILL.md`
|
|
15
|
+
|
|
16
|
+
See [sdd-dev](../sdd-dev/SKILL.md) for full documentation.
|
|
17
|
+
|
|
18
|
+
## Usage
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
/sdd-development [task description]
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Equivalent to `/sdd-dev [task description]`.
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: secretary-routing
|
|
3
|
+
description: Routes agent management tasks to the correct manager agent. Use when user requests agent creation, updates, audits, git operations, or verification.
|
|
4
|
+
scope: core
|
|
5
|
+
user-invocable: false
|
|
6
|
+
context: fork
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Secretary Routing Skill
|
|
10
|
+
|
|
11
|
+
## Purpose
|
|
12
|
+
|
|
13
|
+
Routes agent management tasks to the appropriate manager agent. This skill contains the coordination logic for orchestrating manager agents (mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sauron).
|
|
14
|
+
|
|
15
|
+
## Manager Agents
|
|
16
|
+
|
|
17
|
+
| Agent | Purpose | Triggers |
|
|
18
|
+
|-------|---------|----------|
|
|
19
|
+
| mgr-creator | Create new agents | "create agent", "new agent" |
|
|
20
|
+
| mgr-updater | Update external agents | "update agent", "sync" |
|
|
21
|
+
| mgr-supplier | Validate dependencies | "audit", "check deps" |
|
|
22
|
+
| mgr-gitnerd | Git operations | "commit", "push", "pr" |
|
|
23
|
+
| mgr-sauron | R017 auto-verification | "verify", "full check" |
|
|
24
|
+
| mgr-claude-code-bible | Claude Code spec compliance | "spec check", "verify compliance" |
|
|
25
|
+
| sys-memory-keeper | Memory operations | "save memory", "recall", "memory search" |
|
|
26
|
+
| sys-naggy | TODO management | "todo", "track tasks", "task list" |
|
|
27
|
+
|
|
28
|
+
## Routing Decision (Priority Order)
|
|
29
|
+
|
|
30
|
+
Before routing via Task tool, evaluate Agent Teams eligibility first:
|
|
31
|
+
|
|
32
|
+
**Self-check:** Does this task need 3+ agents, shared state, or inter-agent communication? If yes, prefer Agent Teams over Task tool. See R018 for the full decision matrix.
|
|
33
|
+
|
|
34
|
+
| Scenario | Preferred |
|
|
35
|
+
|----------|-----------|
|
|
36
|
+
| Single manager task | Task Tool |
|
|
37
|
+
| Batch agent creation (3+) | Agent Teams |
|
|
38
|
+
| Multi-round verification (sauron) | Task Tool |
|
|
39
|
+
| Agent audit + fix cycle | Agent Teams |
|
|
40
|
+
|
|
41
|
+
## Command Routing
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
User Input → Routing → Manager Agent
|
|
45
|
+
|
|
46
|
+
create → mgr-creator
|
|
47
|
+
update → mgr-updater
|
|
48
|
+
audit → mgr-supplier
|
|
49
|
+
git → mgr-gitnerd
|
|
50
|
+
verify → mgr-sauron
|
|
51
|
+
spec → mgr-claude-code-bible
|
|
52
|
+
memory → sys-memory-keeper
|
|
53
|
+
todo → sys-naggy
|
|
54
|
+
improve-report → omcodex:improve-report (skill invocation)
|
|
55
|
+
auto-improve → omcodex:auto-improve (skill invocation)
|
|
56
|
+
batch → multiple (parallel)
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**improve-report keywords**: "improve-report", "improvement", "개선", "개선 리포트", "improve" → invoke `omcodex:improve-report` skill (read-only, no agent delegation needed)
|
|
60
|
+
|
|
61
|
+
**auto-improve keywords**: "auto-improve", "자동 개선", "개선 적용", "apply improvements", "improvement suggestions" → invoke `omcodex:auto-improve` skill (worktree isolation, sauron verification, PR creation)
|
|
62
|
+
|
|
63
|
+
### Ontology-RAG Enrichment (R019)
|
|
64
|
+
|
|
65
|
+
If `get_agent_for_task` MCP tool is available, call it with the original query and inject `suggested_skills` into the agent prompt. Skip silently on failure.
|
|
66
|
+
|
|
67
|
+
### Step 5: Soul Injection (R006)
|
|
68
|
+
|
|
69
|
+
If the selected agent has `soul: true` in frontmatter, read and prepend `.codex/agents/souls/{agent-name}.soul.md` content to the prompt. Skip silently if file doesn't exist.
|
|
70
|
+
|
|
71
|
+
## Routing Rules
|
|
72
|
+
|
|
73
|
+
### 1. Single Task Routing
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
1. Parse user command and identify intent
|
|
77
|
+
2. Select appropriate manager agent
|
|
78
|
+
3. Spawn Task with selected agent role
|
|
79
|
+
4. Monitor execution
|
|
80
|
+
5. Report result to user
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
> **Permission Mode**: When spawning agents, pass `mode: "bypassPermissions"` in the Agent tool call if the session uses bypassPermissions. Without explicit mode, CC defaults to `acceptEdits`.
|
|
84
|
+
|
|
85
|
+
### 2. Batch/Parallel Task Routing
|
|
86
|
+
|
|
87
|
+
When command requires multiple independent operations:
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
1. Break down into sub-tasks
|
|
91
|
+
2. Identify parallelizable tasks (max 4)
|
|
92
|
+
3. Spawn parallel Task instances
|
|
93
|
+
4. Aggregate results
|
|
94
|
+
5. Report summary to user
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Sub-agent Model Selection
|
|
98
|
+
|
|
99
|
+
| Agent | Recommended Model | Reason |
|
|
100
|
+
|-------|-------------------|--------|
|
|
101
|
+
| mgr-creator | sonnet | File generation, balanced |
|
|
102
|
+
| mgr-updater | sonnet | External sync, web fetch |
|
|
103
|
+
| mgr-supplier | haiku | File scan, validation |
|
|
104
|
+
| mgr-gitnerd | sonnet | Commit message quality |
|
|
105
|
+
| mgr-sauron | sonnet | Multi-round verification |
|
|
106
|
+
| mgr-claude-code-bible | sonnet | Spec compliance checks |
|
|
107
|
+
| sys-memory-keeper | sonnet | Memory operations, search |
|
|
108
|
+
| sys-naggy | haiku | Simple TODO tracking |
|
|
109
|
+
|
|
110
|
+
## No Match Fallback
|
|
111
|
+
|
|
112
|
+
When no manager agent matches the request but the task is clearly management-related:
|
|
113
|
+
|
|
114
|
+
```
|
|
115
|
+
User Input → No matching manager agent
|
|
116
|
+
↓
|
|
117
|
+
Evaluate: Is this a specialized management/tooling task?
|
|
118
|
+
YES → Delegate to mgr-creator with context:
|
|
119
|
+
domain: detected tool/technology
|
|
120
|
+
type: manager
|
|
121
|
+
skills: auto-discover from .codex/skills/
|
|
122
|
+
NO → Ask user for clarification
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
**Examples of dynamic creation triggers:**
|
|
126
|
+
- New CI/CD tool management (e.g., "ArgoCD 배포 관리해줘")
|
|
127
|
+
- New monitoring tool setup (e.g., "Grafana 대시보드 관리")
|
|
128
|
+
- Unfamiliar package manager operations
|
|
129
|
+
|
|
130
|
+
## Usage
|
|
131
|
+
|
|
132
|
+
This skill is NOT user-invocable. It is automatically triggered when the main conversation detects agent management intent.
|