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,234 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dev-refactor
|
|
3
|
+
description: Refactor code for better structure and patterns
|
|
4
|
+
scope: core
|
|
5
|
+
argument-hint: "<file-or-directory> [--lang <language>] [--spec]"
|
|
6
|
+
user-invocable: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Code Refactoring Skill
|
|
10
|
+
|
|
11
|
+
Refactor code for better structure, naming, and patterns using language-specific expert agents.
|
|
12
|
+
|
|
13
|
+
## When NOT to Use
|
|
14
|
+
|
|
15
|
+
| Scenario | Better Alternative |
|
|
16
|
+
|----------|--------------------|
|
|
17
|
+
| Renaming only (no structural change) | IDE rename refactoring or `sed` |
|
|
18
|
+
| Formatting cleanup | Run formatter (`prettier`, `gofmt`, `black`) |
|
|
19
|
+
| No test coverage for target code | Write tests first (`/structured-dev-cycle`) |
|
|
20
|
+
| Moving files between directories | `git mv` via mgr-gitnerd |
|
|
21
|
+
|
|
22
|
+
**Pre-execution check**: Verify test coverage exists for the refactoring target. Refactoring without tests risks silent regressions.
|
|
23
|
+
|
|
24
|
+
## Pre-flight Guards
|
|
25
|
+
|
|
26
|
+
Before executing the refactoring workflow, the agent MUST run these checks:
|
|
27
|
+
|
|
28
|
+
### Guard 1: Test Coverage Check
|
|
29
|
+
**Level**: WARN
|
|
30
|
+
**Check**: Verify test files exist for the refactoring target
|
|
31
|
+
```bash
|
|
32
|
+
# For target file src/module/foo.ts, check for:
|
|
33
|
+
# - src/module/foo.test.ts
|
|
34
|
+
# - src/module/foo.spec.ts
|
|
35
|
+
# - tests/module/foo.test.ts
|
|
36
|
+
# - test/module/foo.test.ts
|
|
37
|
+
# - __tests__/module/foo.test.ts
|
|
38
|
+
# For Go: foo_test.go in same package
|
|
39
|
+
# For Python: test_foo.py or foo_test.py
|
|
40
|
+
```
|
|
41
|
+
**Action**: `[Pre-flight] WARN: No test file found for {target}. Refactoring without tests risks silent regressions. Consider writing tests first (/structured-dev-cycle).`
|
|
42
|
+
|
|
43
|
+
### Guard 2: Rename-Only Detection
|
|
44
|
+
**Level**: INFO
|
|
45
|
+
**Check**: If the user request is purely about renaming (no structural change)
|
|
46
|
+
```
|
|
47
|
+
# Keyword detection in user request
|
|
48
|
+
keywords: rename, 이름 변경, 이름 바꿔, rename variable, rename function
|
|
49
|
+
# AND no structural keywords
|
|
50
|
+
structural_keywords: extract, split, merge, restructure, reorganize, decompose
|
|
51
|
+
```
|
|
52
|
+
**Action**: `[Pre-flight] INFO: For rename-only refactoring, IDE rename (F2) or sed is faster and safer (handles all references). Proceeding with full refactoring.`
|
|
53
|
+
|
|
54
|
+
### Guard 3: Formatting-Only Request Detection
|
|
55
|
+
**Level**: INFO
|
|
56
|
+
**Check**: If the request is about formatting or style cleanup
|
|
57
|
+
```
|
|
58
|
+
# Keyword detection
|
|
59
|
+
keywords: format, formatting, indent, indentation, 포맷, 스타일, whitespace, spacing
|
|
60
|
+
```
|
|
61
|
+
**Action**: `[Pre-flight] INFO: For formatting cleanup, run the appropriate formatter (prettier, gofmt, black, rustfmt). Proceeding with full refactoring.`
|
|
62
|
+
|
|
63
|
+
### Guard 4: File Move Detection
|
|
64
|
+
**Level**: INFO
|
|
65
|
+
**Check**: If the request is about moving files between directories
|
|
66
|
+
```
|
|
67
|
+
# Keyword detection
|
|
68
|
+
keywords: move file, move to, 파일 이동, 옮겨, relocate, reorganize files
|
|
69
|
+
# AND no code-level changes mentioned
|
|
70
|
+
```
|
|
71
|
+
**Action**: `[Pre-flight] INFO: For file moves without code changes, use git mv via mgr-gitnerd to preserve git history.`
|
|
72
|
+
|
|
73
|
+
### Display Format
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
[Pre-flight] dev-refactor
|
|
77
|
+
├── Test coverage: WARN — no test file for src/utils.ts
|
|
78
|
+
├── Rename-only: PASS
|
|
79
|
+
├── Formatting-only: PASS
|
|
80
|
+
└── File move: PASS
|
|
81
|
+
Result: PROCEED WITH CAUTION (0 GATE, 1 WARN, 0 INFO)
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
If any GATE: block and suggest prerequisite.
|
|
85
|
+
If any WARN: show warning, ask user to confirm.
|
|
86
|
+
If only PASS/INFO: proceed automatically.
|
|
87
|
+
|
|
88
|
+
## Parameters
|
|
89
|
+
|
|
90
|
+
| Name | Type | Required | Description |
|
|
91
|
+
|------|------|----------|-------------|
|
|
92
|
+
| path | string | yes | File or directory to refactor |
|
|
93
|
+
|
|
94
|
+
## Options
|
|
95
|
+
|
|
96
|
+
```
|
|
97
|
+
--lang, -l Language (auto-detected if not specified)
|
|
98
|
+
Values: go, python, rust, kotlin, typescript, java
|
|
99
|
+
--focus, -f Focus area (structure, naming, patterns, all)
|
|
100
|
+
--dry-run Show proposed changes without applying
|
|
101
|
+
--verbose, -v Detailed output
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## Workflow
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
0. Run pre-flight guards (MUST complete before proceeding)
|
|
108
|
+
1. Detect language (or use --lang)
|
|
109
|
+
2. Select appropriate expert agent
|
|
110
|
+
3. Load language-specific skill
|
|
111
|
+
4. Analyze code structure
|
|
112
|
+
5. Propose refactoring changes
|
|
113
|
+
6. Apply changes (if not --dry-run)
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
## Agent Selection
|
|
117
|
+
|
|
118
|
+
| File Extension | Agent | Skill |
|
|
119
|
+
|----------------|-------|-------|
|
|
120
|
+
| .go | lang-golang-expert | go-best-practices |
|
|
121
|
+
| .py | lang-python-expert | python-best-practices |
|
|
122
|
+
| .rs | lang-rust-expert | rust-best-practices |
|
|
123
|
+
| .kt | lang-kotlin-expert | kotlin-best-practices |
|
|
124
|
+
| .ts, .tsx | lang-typescript-expert | typescript-best-practices |
|
|
125
|
+
| .java | be-springboot-expert | springboot-best-practices |
|
|
126
|
+
| .jsx, .js (React) | fe-vercel-agent | react-best-practices |
|
|
127
|
+
|
|
128
|
+
## Refactoring Categories
|
|
129
|
+
|
|
130
|
+
| Category | Description |
|
|
131
|
+
|----------|-------------|
|
|
132
|
+
| structure | File/module organization, package structure |
|
|
133
|
+
| naming | Variable, function, type naming conventions |
|
|
134
|
+
| patterns | Design patterns, idiomatic code |
|
|
135
|
+
| duplication | Extract common code, reduce repetition |
|
|
136
|
+
| complexity | Simplify complex functions, reduce nesting |
|
|
137
|
+
|
|
138
|
+
## Output Format
|
|
139
|
+
|
|
140
|
+
### Dry Run
|
|
141
|
+
```
|
|
142
|
+
[dev:refactor src/utils.go --dry-run]
|
|
143
|
+
|
|
144
|
+
┌─ Agent: lang-golang-expert (sw-engineer)
|
|
145
|
+
├─ Skill: go-best-practices
|
|
146
|
+
└─ File: src/utils.go
|
|
147
|
+
|
|
148
|
+
Analysis:
|
|
149
|
+
|
|
150
|
+
[Structure] Lines 10-45
|
|
151
|
+
Issue: Function too long (35 lines)
|
|
152
|
+
Suggest: Extract helper functions
|
|
153
|
+
|
|
154
|
+
[Naming] Line 12
|
|
155
|
+
Issue: Abbreviation in function name
|
|
156
|
+
Found: func procData()
|
|
157
|
+
Suggest: func processData()
|
|
158
|
+
|
|
159
|
+
[Patterns] Lines 20-30
|
|
160
|
+
Issue: Repeated error handling pattern
|
|
161
|
+
Suggest: Create handleError() helper
|
|
162
|
+
|
|
163
|
+
Proposed Changes:
|
|
164
|
+
1. Extract lines 15-25 into validateInput()
|
|
165
|
+
2. Rename procData → processData
|
|
166
|
+
3. Create handleError() helper function
|
|
167
|
+
|
|
168
|
+
No changes made (dry-run mode).
|
|
169
|
+
Run without --dry-run to apply changes.
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
### Apply Changes
|
|
173
|
+
```
|
|
174
|
+
[dev:refactor src/utils.go]
|
|
175
|
+
|
|
176
|
+
┌─ Agent: lang-golang-expert (sw-engineer)
|
|
177
|
+
├─ Skill: go-best-practices
|
|
178
|
+
└─ File: src/utils.go
|
|
179
|
+
|
|
180
|
+
Refactoring:
|
|
181
|
+
|
|
182
|
+
[1/3] Extracting validateInput()...
|
|
183
|
+
✓ Created function at line 50
|
|
184
|
+
✓ Updated calls at lines 15, 22
|
|
185
|
+
|
|
186
|
+
[2/3] Renaming procData → processData...
|
|
187
|
+
✓ Renamed function definition
|
|
188
|
+
✓ Updated 3 call sites
|
|
189
|
+
|
|
190
|
+
[3/3] Creating handleError() helper...
|
|
191
|
+
✓ Created function at line 60
|
|
192
|
+
✓ Replaced 5 error handling blocks
|
|
193
|
+
|
|
194
|
+
Summary:
|
|
195
|
+
Changes applied: 3
|
|
196
|
+
Lines modified: 28
|
|
197
|
+
Functions added: 2
|
|
198
|
+
Functions renamed: 1
|
|
199
|
+
|
|
200
|
+
Recommendation: Run tests to verify changes.
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
## Spec Mode (`--spec`)
|
|
204
|
+
|
|
205
|
+
When the `--spec` flag is present, refactoring is guided by the target's canonical specification:
|
|
206
|
+
|
|
207
|
+
### Workflow
|
|
208
|
+
|
|
209
|
+
1. **Load spec**: Read `.codex/specs/<agent-name>.spec.md` (generated by `/omcodex:takeover`)
|
|
210
|
+
- If spec doesn't exist, run takeover first: `/omcodex:takeover <name>`
|
|
211
|
+
2. **Extract invariants**: Parse the spec's `## Invariants` section as pre-flight guard constraints
|
|
212
|
+
3. **Refactor**: Perform normal refactoring (per existing workflow)
|
|
213
|
+
4. **Verify invariants**: After refactoring, check each invariant still holds:
|
|
214
|
+
```
|
|
215
|
+
[Spec Verification]
|
|
216
|
+
├── ✓ Invariant 1: {description} — PASS
|
|
217
|
+
├── ✓ Invariant 2: {description} — PASS
|
|
218
|
+
└── ✗ Invariant 3: {description} — FAIL (reason)
|
|
219
|
+
```
|
|
220
|
+
5. **Regenerate spec**: If refactoring changed the contract, run `/omcodex:takeover <name>` to update
|
|
221
|
+
|
|
222
|
+
### When to Use
|
|
223
|
+
|
|
224
|
+
| Scenario | Use `--spec`? |
|
|
225
|
+
|----------|--------------|
|
|
226
|
+
| Refactoring agent internals | Yes — preserves declared invariants |
|
|
227
|
+
| Renaming/restructuring skill | Yes — ensures contract stability |
|
|
228
|
+
| Simple code cleanup | No — overhead not justified |
|
|
229
|
+
| Adding new capability | No — spec will change anyway |
|
|
230
|
+
|
|
231
|
+
### Prerequisites
|
|
232
|
+
|
|
233
|
+
- `.codex/specs/<name>.spec.md` must exist (or will be auto-generated via takeover)
|
|
234
|
+
- Target must be an agent or skill (not arbitrary code)
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dev-review
|
|
3
|
+
description: Review code against language-specific best practices
|
|
4
|
+
scope: core
|
|
5
|
+
argument-hint: "<file-or-directory> [--lang <language>]"
|
|
6
|
+
user-invocable: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Code Review Skill
|
|
10
|
+
|
|
11
|
+
Review code for best practices using language-specific expert agents.
|
|
12
|
+
|
|
13
|
+
## When NOT to Use
|
|
14
|
+
|
|
15
|
+
| Scenario | Better Alternative |
|
|
16
|
+
|----------|--------------------|
|
|
17
|
+
| Formatting/style issues only | Run linter or formatter directly (`prettier`, `gofmt`, `black`) |
|
|
18
|
+
| Single syntax error | IDE/LSP diagnostics |
|
|
19
|
+
| Auto-generated code | Skip — generated code follows its own conventions |
|
|
20
|
+
| Pre-commit quick check | Git hooks with linter integration |
|
|
21
|
+
|
|
22
|
+
**Pre-execution check**: If the issue is purely formatting, run the appropriate formatter first.
|
|
23
|
+
|
|
24
|
+
## Pre-flight Guards
|
|
25
|
+
|
|
26
|
+
Before executing the review workflow, the agent MUST run these checks:
|
|
27
|
+
|
|
28
|
+
### Guard 1: Auto-generated Code Detection
|
|
29
|
+
**Level**: WARN
|
|
30
|
+
**Check**: Scan target files for auto-generation markers
|
|
31
|
+
```bash
|
|
32
|
+
# Detection patterns (any match = WARN)
|
|
33
|
+
grep -rl "DO NOT EDIT" {target} 2>/dev/null
|
|
34
|
+
grep -rl "auto-generated" {target} 2>/dev/null
|
|
35
|
+
grep -rl "@generated" {target} 2>/dev/null
|
|
36
|
+
# File pattern detection
|
|
37
|
+
# *.gen.*, *.pb.go, */generated/*, */proto/*, *_generated.*, *.g.dart
|
|
38
|
+
```
|
|
39
|
+
**Action**: `[Pre-flight] WARN: Auto-generated code detected in {file}. Generated code follows its own conventions — review may produce false positives. Continue? [Y/n]`
|
|
40
|
+
|
|
41
|
+
### Guard 2: Formatting-Only Changes Detection
|
|
42
|
+
**Level**: INFO
|
|
43
|
+
**Check**: If reviewing changed files (not full codebase), check if changes are formatting-only
|
|
44
|
+
```bash
|
|
45
|
+
# If git diff is available for the target
|
|
46
|
+
git diff --stat {target} | grep -E '^\s+\d+ files? changed'
|
|
47
|
+
# Compare with whitespace-ignored diff
|
|
48
|
+
git diff -w {target}
|
|
49
|
+
# If -w diff is empty but regular diff has changes → formatting only
|
|
50
|
+
```
|
|
51
|
+
**Action**: `[Pre-flight] INFO: Changes in {file} appear to be formatting-only. Consider running the appropriate formatter instead (prettier, gofmt, black).`
|
|
52
|
+
|
|
53
|
+
### Guard 3: Single Syntax Error Detection
|
|
54
|
+
**Level**: INFO
|
|
55
|
+
**Check**: If target is a single file and the request mentions "error", "syntax", or "broken"
|
|
56
|
+
```
|
|
57
|
+
# Keyword detection in user request
|
|
58
|
+
keywords: error, syntax, broken, doesn't compile, won't build
|
|
59
|
+
# Single file check
|
|
60
|
+
target is exactly 1 file (not a directory)
|
|
61
|
+
```
|
|
62
|
+
**Action**: `[Pre-flight] INFO: For single syntax errors, IDE/LSP diagnostics are faster. Proceeding with full review.`
|
|
63
|
+
|
|
64
|
+
### Guard 4: Linter/Formatter Available Detection
|
|
65
|
+
**Level**: INFO
|
|
66
|
+
**Check**: Detect if a project-appropriate linter exists
|
|
67
|
+
```bash
|
|
68
|
+
# Check for linter configs in project root
|
|
69
|
+
ls .eslintrc* .prettierrc* biome.json .golangci.yml pyproject.toml .rubocop.yml 2>/dev/null
|
|
70
|
+
```
|
|
71
|
+
**Action**: `[Pre-flight] INFO: Linter config found ({config}). For style-only issues, run the linter directly.`
|
|
72
|
+
|
|
73
|
+
### Display Format
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
[Pre-flight] dev-review
|
|
77
|
+
├── Auto-generated code: PASS
|
|
78
|
+
├── Formatting-only changes: INFO — whitespace changes in src/util.ts
|
|
79
|
+
├── Single syntax error: PASS
|
|
80
|
+
└── Linter available: INFO — .eslintrc.json found
|
|
81
|
+
Result: PROCEED (0 GATE, 0 WARN, 2 INFO)
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
If any GATE: block and suggest alternative.
|
|
85
|
+
If any WARN: show warning, ask user to confirm.
|
|
86
|
+
If only PASS/INFO: proceed automatically.
|
|
87
|
+
|
|
88
|
+
## Parameters
|
|
89
|
+
|
|
90
|
+
| Name | Type | Required | Description |
|
|
91
|
+
|------|------|----------|-------------|
|
|
92
|
+
| path | string | yes | File or directory to review |
|
|
93
|
+
|
|
94
|
+
## Options
|
|
95
|
+
|
|
96
|
+
```
|
|
97
|
+
--lang, -l Language (auto-detected if not specified)
|
|
98
|
+
Values: go, python, rust, kotlin, typescript, java
|
|
99
|
+
--focus, -f Focus area (style, performance, security, all)
|
|
100
|
+
--verbose, -v Detailed output
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Workflow
|
|
104
|
+
|
|
105
|
+
```
|
|
106
|
+
0. Run pre-flight guards (see ## Pre-flight Guards)
|
|
107
|
+
1. Detect language (or use --lang)
|
|
108
|
+
2. Select appropriate expert agent
|
|
109
|
+
3. Load language-specific skill
|
|
110
|
+
4. Analyze code against best practices
|
|
111
|
+
5. Generate review report
|
|
112
|
+
```
|
|
113
|
+
6. **Artifact persistence** (optional): Review agent saves findings to:
|
|
114
|
+
```
|
|
115
|
+
.codex/outputs/sessions/{YYYY-MM-DD}/dev-review-{HHmmss}.md
|
|
116
|
+
```
|
|
117
|
+
With metadata header:
|
|
118
|
+
```markdown
|
|
119
|
+
---
|
|
120
|
+
skill: dev-review
|
|
121
|
+
date: {ISO-8601 with timezone}
|
|
122
|
+
query: "{original user query}"
|
|
123
|
+
---
|
|
124
|
+
```
|
|
125
|
+
The review agent creates the directory and writes the artifact before returning results (R010 compliance).
|
|
126
|
+
|
|
127
|
+
## Agent Selection
|
|
128
|
+
|
|
129
|
+
| File Extension | Agent | Skill |
|
|
130
|
+
|----------------|-------|-------|
|
|
131
|
+
| .go | lang-golang-expert | go-best-practices |
|
|
132
|
+
| .py | lang-python-expert | python-best-practices |
|
|
133
|
+
| .rs | lang-rust-expert | rust-best-practices |
|
|
134
|
+
| .kt | lang-kotlin-expert | kotlin-best-practices |
|
|
135
|
+
| .ts, .tsx | lang-typescript-expert | typescript-best-practices |
|
|
136
|
+
| .java | be-springboot-expert | springboot-best-practices |
|
|
137
|
+
| .jsx, .js (React) | fe-vercel-agent | react-best-practices |
|
|
138
|
+
|
|
139
|
+
## Output Format
|
|
140
|
+
|
|
141
|
+
```
|
|
142
|
+
[dev:review src/main.go]
|
|
143
|
+
|
|
144
|
+
┌─ Agent: lang-golang-expert (sw-engineer)
|
|
145
|
+
├─ Skill: go-best-practices
|
|
146
|
+
└─ File: src/main.go
|
|
147
|
+
|
|
148
|
+
Review Results:
|
|
149
|
+
|
|
150
|
+
[Style] Line 15
|
|
151
|
+
Issue: Variable name should be camelCase
|
|
152
|
+
Found: user_name
|
|
153
|
+
Suggest: userName
|
|
154
|
+
|
|
155
|
+
[Error Handling] Line 42
|
|
156
|
+
Issue: Error not checked
|
|
157
|
+
Found: file.Close()
|
|
158
|
+
Suggest: if err := file.Close(); err != nil { ... }
|
|
159
|
+
|
|
160
|
+
[Performance] Line 78
|
|
161
|
+
Issue: Inefficient string concatenation in loop
|
|
162
|
+
Found: str += item
|
|
163
|
+
Suggest: Use strings.Builder
|
|
164
|
+
|
|
165
|
+
Summary:
|
|
166
|
+
Style: 1 issue
|
|
167
|
+
Error Handling: 1 issue
|
|
168
|
+
Performance: 1 issue
|
|
169
|
+
Total: 3 issues
|
|
170
|
+
|
|
171
|
+
Recommendation: Fix error handling issues first.
|
|
172
|
+
```
|