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,89 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: action-validator
|
|
3
|
+
description: Pre-action boundary checking — validates agent tool calls against declared capabilities and task contracts
|
|
4
|
+
scope: core
|
|
5
|
+
user-invocable: false
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Action Validator Skill
|
|
9
|
+
|
|
10
|
+
## Purpose
|
|
11
|
+
|
|
12
|
+
Advisory pre-action validation layer that checks agent tool calls against declared capabilities, file access scope (R002), and task contracts before execution. Inspired by AutoHarness (Google DeepMind) — enforcing action-space legality at agent boundaries.
|
|
13
|
+
|
|
14
|
+
This skill does NOT block actions (R021 advisory-first model). It emits warnings when agents attempt operations outside their declared scope.
|
|
15
|
+
|
|
16
|
+
## Validation Checks
|
|
17
|
+
|
|
18
|
+
| Check | What | Against |
|
|
19
|
+
|-------|------|---------|
|
|
20
|
+
| Tool scope | Tool being called | Agent's `tools` frontmatter list |
|
|
21
|
+
| File scope | File path in Write/Edit | R002 file access rules |
|
|
22
|
+
| Domain scope | Target file extension | Agent's `domain` frontmatter |
|
|
23
|
+
| Task contract | Operation type | Task description constraints |
|
|
24
|
+
|
|
25
|
+
## Advisory Format
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
--- [Action Validator] Scope warning ---
|
|
29
|
+
Agent: {agent-name}
|
|
30
|
+
Tool: {tool-name}
|
|
31
|
+
Target: {file-path}
|
|
32
|
+
Issue: {description}
|
|
33
|
+
Declared scope: {agent's declared tools/domain}
|
|
34
|
+
💡 Suggestion: {recommended action}
|
|
35
|
+
---
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Integration Points
|
|
39
|
+
|
|
40
|
+
| System | How |
|
|
41
|
+
|--------|-----|
|
|
42
|
+
| PreToolUse hooks | Optional hook to check tool calls (advisory only) |
|
|
43
|
+
| pipeline-guards | Complements pipeline stage gates |
|
|
44
|
+
| adversarial-review | Provides action-space-legality criterion |
|
|
45
|
+
| R002 (Permissions) | Validates against declared file access rules |
|
|
46
|
+
| R010 (Orchestrator) | Orchestrator validates subagent scope claims |
|
|
47
|
+
|
|
48
|
+
## Policy Cache Pattern
|
|
49
|
+
|
|
50
|
+
For high-repetition agents (e.g., mgr-gitnerd commit workflows), capture validated decision paths as reusable policies:
|
|
51
|
+
|
|
52
|
+
```yaml
|
|
53
|
+
policy_cache:
|
|
54
|
+
agent: mgr-gitnerd
|
|
55
|
+
action: git-commit
|
|
56
|
+
validated_steps:
|
|
57
|
+
- tool: Bash
|
|
58
|
+
pattern: "git add *"
|
|
59
|
+
verdict: allow
|
|
60
|
+
- tool: Bash
|
|
61
|
+
pattern: "git commit *"
|
|
62
|
+
verdict: allow
|
|
63
|
+
- tool: Bash
|
|
64
|
+
pattern: "git push *"
|
|
65
|
+
verdict: warn_confirm
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Policy caching reduces redundant LLM calls for well-understood workflows. Policies are advisory — the orchestrator may override.
|
|
69
|
+
|
|
70
|
+
## Code Harness Integration (AutoHarness)
|
|
71
|
+
|
|
72
|
+
When a synthesized harness exists for an agent (`.codex/outputs/harnesses/{agent-name}-*.yaml`), action-validator can use it for enhanced validation:
|
|
73
|
+
|
|
74
|
+
| Mode | Source | Behavior |
|
|
75
|
+
|------|--------|----------|
|
|
76
|
+
| Advisory (default) | Prompt-based checks | Emit warnings only |
|
|
77
|
+
| Code-verified | harness-synthesizer output | Run harness validation code, emit advisory results |
|
|
78
|
+
| Hard-enforce (opt-in) | harness-synthesizer `--hard-enforce` | Block invalid actions (requires explicit opt-in, see R021) |
|
|
79
|
+
|
|
80
|
+
To generate a harness for an agent: `/harness-synthesizer --agent {name} --mode verifier`
|
|
81
|
+
|
|
82
|
+
Code harness validation is additive — it supplements prompt-based checks, not replaces them.
|
|
83
|
+
|
|
84
|
+
## Scope
|
|
85
|
+
|
|
86
|
+
This skill is an advisory layer, not a hard enforcement mechanism:
|
|
87
|
+
- **Does**: Emit warnings, log scope violations, suggest corrections
|
|
88
|
+
- **Does NOT**: Block tool execution, modify agent behavior, override R021
|
|
89
|
+
- **Future**: May integrate with PreToolUse hooks for automated checking (see R021 promotion criteria)
|
|
@@ -0,0 +1,335 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: omcodex:adaptive-harness
|
|
3
|
+
description: Auto-detect project context and optimize harness — deactivate unused agents/skills, suggest missing experts, generate project profile
|
|
4
|
+
scope: harness
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
user-invocable: true
|
|
7
|
+
argument-hint: "[--optimize|--scan|--learn|--export|--import|--dry-run] [target-dir]"
|
|
8
|
+
effort: high
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Adaptive Harness Self-Customization Skill
|
|
12
|
+
|
|
13
|
+
Automatically detects project context and optimizes the oh-my-customcodex harness (agents, skills, rules) to fit the project. Generates a persistent project profile that drives agent activation decisions and records learned patterns over time.
|
|
14
|
+
|
|
15
|
+
## Usage
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
/omcodex:adaptive-harness # Full scan + optimize
|
|
19
|
+
/omcodex:adaptive-harness --scan # Scan only (generate/update project profile)
|
|
20
|
+
/omcodex:adaptive-harness --optimize # Deactivate unused, suggest missing
|
|
21
|
+
/omcodex:adaptive-harness --learn # Analyze failure patterns, update profile
|
|
22
|
+
/omcodex:adaptive-harness --export # Export profile as portable bundle
|
|
23
|
+
/omcodex:adaptive-harness --import <path> # Import profile from another project
|
|
24
|
+
/omcodex:adaptive-harness --dry-run # Show what would change without modifying
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Default (no flag): runs `--scan` then `--optimize` in sequence.
|
|
28
|
+
|
|
29
|
+
## Project Profile Format
|
|
30
|
+
|
|
31
|
+
The skill generates and maintains `.codex/project-profile.yaml`. Manual edits to this file are preserved across runs — the skill merges new detections with existing content rather than overwriting.
|
|
32
|
+
|
|
33
|
+
```yaml
|
|
34
|
+
# Auto-generated by adaptive-harness. Manual edits will be preserved.
|
|
35
|
+
project:
|
|
36
|
+
name: detected-project-name
|
|
37
|
+
scanned_at: "2026-04-12T10:00:00Z"
|
|
38
|
+
|
|
39
|
+
tech_stack:
|
|
40
|
+
languages: [python, typescript]
|
|
41
|
+
frameworks: [fastapi, next.js]
|
|
42
|
+
databases: [postgres, redis]
|
|
43
|
+
infra: [docker, aws]
|
|
44
|
+
|
|
45
|
+
detection_evidence:
|
|
46
|
+
- indicator: "requirements.txt found"
|
|
47
|
+
confidence: high
|
|
48
|
+
suggests: [lang-python-expert, be-fastapi-expert]
|
|
49
|
+
- indicator: "package.json with next dependency"
|
|
50
|
+
confidence: high
|
|
51
|
+
suggests: [lang-typescript-expert, fe-vercel-agent]
|
|
52
|
+
|
|
53
|
+
active_agents:
|
|
54
|
+
- lang-python-expert
|
|
55
|
+
- be-fastapi-expert
|
|
56
|
+
- lang-typescript-expert
|
|
57
|
+
- fe-vercel-agent
|
|
58
|
+
- db-postgres-expert
|
|
59
|
+
- db-redis-expert
|
|
60
|
+
- infra-docker-expert
|
|
61
|
+
- infra-aws-expert
|
|
62
|
+
# manager agents always active
|
|
63
|
+
- mgr-creator
|
|
64
|
+
- mgr-gitnerd
|
|
65
|
+
- mgr-sauron
|
|
66
|
+
- mgr-supplier
|
|
67
|
+
- mgr-updater
|
|
68
|
+
- mgr-claude-code-bible
|
|
69
|
+
|
|
70
|
+
inactive_agents:
|
|
71
|
+
- lang-golang-expert # no Go files detected
|
|
72
|
+
- lang-rust-expert # no Rust files detected
|
|
73
|
+
|
|
74
|
+
usage_stats:
|
|
75
|
+
most_used_agents: [] # populated by --learn
|
|
76
|
+
failure_patterns: [] # populated by --learn
|
|
77
|
+
|
|
78
|
+
overrides:
|
|
79
|
+
rules: {} # e.g., R009: { max_parallel: 5 }
|
|
80
|
+
|
|
81
|
+
last_optimized: "2026-04-12T10:00:00Z"
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
## Workflow: --scan
|
|
85
|
+
|
|
86
|
+
Scans the TARGET project (the project using oh-my-customcodex, not the harness itself) and generates or updates the project profile. Uses Read, Glob, and Grep only — no side effects.
|
|
87
|
+
|
|
88
|
+
### Step 1: Detect Tech Stack
|
|
89
|
+
|
|
90
|
+
Check for language manifest files and framework indicators:
|
|
91
|
+
|
|
92
|
+
| Indicator Files | Tech | Suggests Agents |
|
|
93
|
+
|----------------|------|-----------------|
|
|
94
|
+
| `go.mod`, `*.go` | Go | lang-golang-expert, be-go-backend-expert |
|
|
95
|
+
| `Cargo.toml`, `*.rs` | Rust | lang-rust-expert |
|
|
96
|
+
| `requirements.txt`, `pyproject.toml`, `*.py` | Python | lang-python-expert |
|
|
97
|
+
| `fastapi` in deps/imports | FastAPI | be-fastapi-expert |
|
|
98
|
+
| `django` in deps/imports | Django | be-django-expert |
|
|
99
|
+
| `package.json`, `tsconfig.json`, `*.ts`, `*.tsx` | TypeScript | lang-typescript-expert |
|
|
100
|
+
| `next` in package.json deps | Next.js | fe-vercel-agent |
|
|
101
|
+
| `vue` in package.json deps | Vue.js | fe-vuejs-agent |
|
|
102
|
+
| `svelte.config.*`, `*.svelte` | Svelte | fe-svelte-agent |
|
|
103
|
+
| `pubspec.yaml`, `*.dart` | Flutter | fe-flutter-agent |
|
|
104
|
+
| `*.kt`, `build.gradle.kts` | Kotlin | lang-kotlin-expert |
|
|
105
|
+
| `*.java`, `pom.xml` | Java | lang-java21-expert |
|
|
106
|
+
| `spring-boot` in deps | Spring Boot | be-springboot-expert |
|
|
107
|
+
| `express` in package.json deps | Express | be-express-expert |
|
|
108
|
+
| `@nestjs` in package.json deps | NestJS | be-nestjs-expert |
|
|
109
|
+
| `Dockerfile`, `docker-compose.*` | Docker | infra-docker-expert |
|
|
110
|
+
| `cdk.json`, `template.yaml`, `.aws/` | AWS | infra-aws-expert |
|
|
111
|
+
| `terraform/`, `*.tf` | Terraform | infra-aws-expert |
|
|
112
|
+
| `.github/workflows/` | CI/CD | mgr-gitnerd |
|
|
113
|
+
| `*.sql`, `alembic/`, `pg` in deps | PostgreSQL | db-postgres-expert |
|
|
114
|
+
| `redis` in deps/config | Redis | db-redis-expert |
|
|
115
|
+
| `supabase` in deps/config | Supabase | db-supabase-expert |
|
|
116
|
+
| `prisma/`, `drizzle/` | ORM | db-postgres-expert |
|
|
117
|
+
| `dags/*.py`, `airflow` in deps | Airflow | de-airflow-expert |
|
|
118
|
+
| `dbt_project.yml` | dbt | de-dbt-expert |
|
|
119
|
+
| `kafka` in deps/config | Kafka | de-kafka-expert |
|
|
120
|
+
| `spark` in deps/config | Spark | de-spark-expert |
|
|
121
|
+
| `snowflake` in deps/config | Snowflake | de-snowflake-expert |
|
|
122
|
+
|
|
123
|
+
### Step 2: Build Detection Evidence
|
|
124
|
+
|
|
125
|
+
For each indicator found, record:
|
|
126
|
+
- `indicator`: human-readable description of what was found
|
|
127
|
+
- `confidence`: `high` (direct manifest file) | `medium` (dependency reference) | `low` (indirect signal)
|
|
128
|
+
- `suggests`: list of agent names this indicator implies
|
|
129
|
+
|
|
130
|
+
### Step 3: Write Project Profile
|
|
131
|
+
|
|
132
|
+
Delegate write to a subagent (R010). Merge with existing profile if present — preserve `overrides`, `usage_stats`, and any manual entries.
|
|
133
|
+
|
|
134
|
+
Output format:
|
|
135
|
+
|
|
136
|
+
```
|
|
137
|
+
[adaptive-harness --scan] Target: /path/to/project
|
|
138
|
+
|
|
139
|
+
Tech Stack Detected:
|
|
140
|
+
- Python (requirements.txt + pyproject.toml found) [confidence: high]
|
|
141
|
+
- FastAPI ("fastapi" in requirements.txt) [confidence: high]
|
|
142
|
+
- TypeScript (tsconfig.json found) [confidence: high]
|
|
143
|
+
- Next.js ("next" in package.json deps) [confidence: high]
|
|
144
|
+
- Docker (Dockerfile found) [confidence: high]
|
|
145
|
+
- PostgreSQL ("psycopg2" in requirements.txt) [confidence: medium]
|
|
146
|
+
- Redis ("redis" in requirements.txt) [confidence: medium]
|
|
147
|
+
- AWS (cdk.json found) [confidence: high]
|
|
148
|
+
|
|
149
|
+
Active agents identified: 8
|
|
150
|
+
Profile written: .codex/project-profile.yaml
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
## Workflow: --optimize
|
|
154
|
+
|
|
155
|
+
Reads the project profile and adjusts which agent files are active.
|
|
156
|
+
|
|
157
|
+
### Step 1: Load Profile
|
|
158
|
+
|
|
159
|
+
Read `.codex/project-profile.yaml`. If the profile does not exist, run `--scan` first.
|
|
160
|
+
|
|
161
|
+
### Step 2: Identify Inactive Agents
|
|
162
|
+
|
|
163
|
+
Compare all agent files in `.codex/agents/*.md` against `active_agents` list from the profile. Agents not in the active list (and not in the always-active set below) are candidates for deactivation.
|
|
164
|
+
|
|
165
|
+
### Always-Active Agents (never deactivate)
|
|
166
|
+
|
|
167
|
+
```
|
|
168
|
+
mgr-creator, mgr-gitnerd, mgr-sauron, mgr-supplier, mgr-updater, mgr-claude-code-bible
|
|
169
|
+
sys-memory-keeper, sys-naggy
|
|
170
|
+
arch-documenter, arch-speckit-agent
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
### Step 3: Move Inactive Agents
|
|
174
|
+
|
|
175
|
+
Delegate to subagent (R010):
|
|
176
|
+
- Create `.codex/agents/.inactive/` directory if it does not exist
|
|
177
|
+
- Move inactive agent `.md` files to `.codex/agents/.inactive/`
|
|
178
|
+
- Update `inactive_agents` list in project profile
|
|
179
|
+
|
|
180
|
+
### Step 4: Detect Gaps
|
|
181
|
+
|
|
182
|
+
Check `active_agents` list against files actually present in `.codex/agents/`. If an active agent file is missing, flag it as a gap and suggest `mgr-creator` to fill it.
|
|
183
|
+
|
|
184
|
+
### Step 5: Log Adaptations
|
|
185
|
+
|
|
186
|
+
Append a record to `.codex/outputs/harness-adaptations/YYYY-MM-DD.md`:
|
|
187
|
+
|
|
188
|
+
```markdown
|
|
189
|
+
## Optimization Run — 2026-04-12T10:00:00Z
|
|
190
|
+
|
|
191
|
+
Deactivated (moved to .inactive/):
|
|
192
|
+
- lang-golang-expert
|
|
193
|
+
- lang-rust-expert
|
|
194
|
+
- de-airflow-expert
|
|
195
|
+
|
|
196
|
+
Gaps detected (agents needed but missing):
|
|
197
|
+
- (none)
|
|
198
|
+
|
|
199
|
+
Profile: .codex/project-profile.yaml
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
### Restore
|
|
203
|
+
|
|
204
|
+
Run `--optimize --restore` to move all files from `.codex/agents/.inactive/` back to `.codex/agents/`. This reverses the last optimization.
|
|
205
|
+
|
|
206
|
+
Output format:
|
|
207
|
+
|
|
208
|
+
```
|
|
209
|
+
[adaptive-harness --optimize]
|
|
210
|
+
|
|
211
|
+
Always-active agents: 10 (protected)
|
|
212
|
+
Active per profile: 8
|
|
213
|
+
Candidates for deactivation: 29
|
|
214
|
+
|
|
215
|
+
Deactivated:
|
|
216
|
+
- lang-golang-expert → .codex/agents/.inactive/
|
|
217
|
+
- lang-rust-expert → .codex/agents/.inactive/
|
|
218
|
+
- de-airflow-expert → .codex/agents/.inactive/
|
|
219
|
+
... (26 more)
|
|
220
|
+
|
|
221
|
+
Gaps detected: 0
|
|
222
|
+
|
|
223
|
+
Log: .codex/outputs/harness-adaptations/2026-04-12.md
|
|
224
|
+
Summary: 29 deactivated, 18 active, 0 gaps
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
**--dry-run** mode outputs `[would deactivate]` / `[would restore]` without moving any files.
|
|
228
|
+
|
|
229
|
+
## Workflow: --learn
|
|
230
|
+
|
|
231
|
+
Analyzes session history and eval-core data to populate `usage_stats` and `failure_patterns` in the project profile.
|
|
232
|
+
|
|
233
|
+
### Step 1: Collect Data Sources
|
|
234
|
+
|
|
235
|
+
- `.codex/outputs/` — session artifacts and eval results
|
|
236
|
+
- `.codex/agent-memory/` — agent memory files with usage patterns
|
|
237
|
+
- Any harness eval output from `/omcodex:harness-eval`
|
|
238
|
+
|
|
239
|
+
### Step 2: Extract Patterns
|
|
240
|
+
|
|
241
|
+
```
|
|
242
|
+
Most-used agents: Count agent invocations across outputs
|
|
243
|
+
Failure patterns: Identify agents that frequently retried or errored
|
|
244
|
+
Unused agents: Active agents with zero invocations in recent N sessions
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
### Step 3: Update Profile
|
|
248
|
+
|
|
249
|
+
Merge findings into `usage_stats` and `failure_patterns` sections of the project profile. Preserve existing entries; append new ones.
|
|
250
|
+
|
|
251
|
+
### Step 4: Generate Suggestions
|
|
252
|
+
|
|
253
|
+
Based on failure patterns, suggest:
|
|
254
|
+
- Rule overrides (e.g., increase `max_parallel` if timeout patterns detected)
|
|
255
|
+
- Agent replacements (e.g., suggest escalation to `opus` model for frequently failing tasks)
|
|
256
|
+
- Additional skills that may reduce failure rate
|
|
257
|
+
|
|
258
|
+
Output format:
|
|
259
|
+
|
|
260
|
+
```
|
|
261
|
+
[adaptive-harness --learn]
|
|
262
|
+
|
|
263
|
+
Sessions analyzed: 12
|
|
264
|
+
Agent invocations found: 847
|
|
265
|
+
|
|
266
|
+
Most-used agents (top 5):
|
|
267
|
+
1. lang-python-expert (312 invocations)
|
|
268
|
+
2. be-fastapi-expert (189 invocations)
|
|
269
|
+
3. mgr-gitnerd (97 invocations)
|
|
270
|
+
4. db-postgres-expert (84 invocations)
|
|
271
|
+
5. lang-typescript-expert (71 invocations)
|
|
272
|
+
|
|
273
|
+
Failure patterns:
|
|
274
|
+
- db-postgres-expert: 3 retries in session 2026-04-10 (timeout pattern)
|
|
275
|
+
|
|
276
|
+
Suggestions:
|
|
277
|
+
- db-postgres-expert: consider effort: high for complex query generation
|
|
278
|
+
- de-kafka-expert: 0 invocations — candidate for deactivation
|
|
279
|
+
|
|
280
|
+
Profile updated: .codex/project-profile.yaml
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
## Workflow: --export / --import
|
|
284
|
+
|
|
285
|
+
### Export
|
|
286
|
+
|
|
287
|
+
Bundles the project profile and active agent list for sharing with another project or team member.
|
|
288
|
+
|
|
289
|
+
Output: `.codex/outputs/harness-bundle-YYYY-MM-DD.json`
|
|
290
|
+
|
|
291
|
+
```json
|
|
292
|
+
{
|
|
293
|
+
"version": "1.0.0",
|
|
294
|
+
"exported_at": "2026-04-12T10:00:00Z",
|
|
295
|
+
"source_project": "detected-project-name",
|
|
296
|
+
"profile": { ... },
|
|
297
|
+
"active_agent_names": [ ... ]
|
|
298
|
+
}
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
### Import
|
|
302
|
+
|
|
303
|
+
```
|
|
304
|
+
/omcodex:adaptive-harness --import .codex/outputs/harness-bundle-2026-04-12.json
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
Reads the bundle and applies the `active_agents` list to the current project by running `--optimize` with the imported profile. Does not overwrite `usage_stats` or `failure_patterns` from the current project.
|
|
308
|
+
|
|
309
|
+
## Execution Rules
|
|
310
|
+
|
|
311
|
+
- `--scan` uses Read, Glob, Grep only — no writes, safe to run anytime
|
|
312
|
+
- All file writes (profile, logs, agent moves) are delegated to subagents (R010)
|
|
313
|
+
- `--dry-run` suppresses all writes; outputs `[would ...]` for every action
|
|
314
|
+
- Profile changes are always logged to `.codex/outputs/harness-adaptations/` for auditability
|
|
315
|
+
- When profile already exists, the skill merges new detections rather than overwriting
|
|
316
|
+
- Parallel Glob/Grep calls are used during `--scan` for performance (R009)
|
|
317
|
+
|
|
318
|
+
## Integration
|
|
319
|
+
|
|
320
|
+
| Component | Interaction |
|
|
321
|
+
|-----------|-------------|
|
|
322
|
+
| `/omcodex:analysis` | Calls adaptive-harness `--scan` after initial tech stack detection to persist the profile |
|
|
323
|
+
| `SessionStart` hook | Lightweight profile existence check only — no full scan at startup |
|
|
324
|
+
| `mgr-creator` | Invoked when gaps are detected during `--optimize` to create missing agent files |
|
|
325
|
+
| `R016` (Continuous Improvement) | Failure patterns from `--learn` may trigger rule updates |
|
|
326
|
+
| `eval-core` | Primary data source for `--learn` invocation and usage pattern extraction |
|
|
327
|
+
| `mgr-sauron` | Run after `--optimize` to verify structural integrity (R017) |
|
|
328
|
+
|
|
329
|
+
## Notes
|
|
330
|
+
|
|
331
|
+
- Always run `--dry-run` first on a new project to preview deactivation scope
|
|
332
|
+
- `--optimize --restore` is the safe exit if deactivation causes unexpected routing failures
|
|
333
|
+
- The `.inactive/` directory is git-tracked so deactivation decisions are visible in history
|
|
334
|
+
- Manager and system agents are unconditionally protected from deactivation
|
|
335
|
+
- Target directory defaults to the project root of the current GPT Codex + OMX session, not the child-package source directory
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: adversarial-review
|
|
3
|
+
description: Adversarial code review using attacker mindset — trust boundary, attack surface, business logic, and defense evaluation
|
|
4
|
+
scope: core
|
|
5
|
+
argument-hint: "<file-or-directory> [--depth quick|thorough]"
|
|
6
|
+
user-invocable: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Adversarial Code Review
|
|
10
|
+
|
|
11
|
+
Review code from an attacker's perspective using STRIDE + OWASP frameworks.
|
|
12
|
+
|
|
13
|
+
## 4-Phase Review Process
|
|
14
|
+
|
|
15
|
+
### Phase 1: Trust Boundary Analysis
|
|
16
|
+
Identify where trust transitions occur:
|
|
17
|
+
- External input reaching internal logic without validation → **Tampering**
|
|
18
|
+
- Implicit trust between services → **Elevation of Privilege**
|
|
19
|
+
- Shared storage without isolation → **Information Disclosure**
|
|
20
|
+
- Authentication boundaries not clearly marked → **Spoofing**
|
|
21
|
+
|
|
22
|
+
Output: `[TRUST-BOUNDARY]` findings with location, threat type, and current validation level.
|
|
23
|
+
|
|
24
|
+
### Phase 2: Attack Surface Mapping
|
|
25
|
+
Map all entry points and exposure:
|
|
26
|
+
- Public API endpoints and auth requirements
|
|
27
|
+
- File upload/download paths → Path traversal risk
|
|
28
|
+
- External system calls (URLs, queries) → SSRF/Injection
|
|
29
|
+
- Event handlers and callbacks → Race conditions
|
|
30
|
+
- Error message verbosity → Information Disclosure
|
|
31
|
+
|
|
32
|
+
Output: `[ATTACK-SURFACE]` table with endpoint, exposure level, and mitigation status.
|
|
33
|
+
|
|
34
|
+
### Phase 3: Business Logic Review
|
|
35
|
+
Analyze logic flaws that static analysis misses:
|
|
36
|
+
- State machine violations (skip steps, replay)
|
|
37
|
+
- Authorization != authentication (authn ok but authz missing)
|
|
38
|
+
- Race conditions in multi-step operations
|
|
39
|
+
- Numeric overflow/underflow in financial calculations
|
|
40
|
+
- Default-allow vs default-deny patterns
|
|
41
|
+
|
|
42
|
+
Output: `[LOGIC-FLAW]` findings with exploitation scenario and impact.
|
|
43
|
+
|
|
44
|
+
### Phase 4: Defense Evaluation
|
|
45
|
+
Assess existing defense mechanisms:
|
|
46
|
+
- Input validation completeness (allowlist vs blocklist)
|
|
47
|
+
- Output encoding consistency
|
|
48
|
+
- Rate limiting and abuse prevention
|
|
49
|
+
- Logging coverage for security events
|
|
50
|
+
- Secret management (hardcoded credentials, env leaks)
|
|
51
|
+
|
|
52
|
+
Output: `[DEFENSE-GAP]` findings with recommendation.
|
|
53
|
+
|
|
54
|
+
## Output Format
|
|
55
|
+
|
|
56
|
+
For each finding:
|
|
57
|
+
```
|
|
58
|
+
[CATEGORY] Severity: HIGH|MEDIUM|LOW
|
|
59
|
+
Location: file:line
|
|
60
|
+
Finding: Description
|
|
61
|
+
Attack: How an attacker would exploit this
|
|
62
|
+
Fix: Recommended remediation
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Depth Modes
|
|
66
|
+
- **quick**: Phase 1 + 2 only (trust boundaries + attack surface)
|
|
67
|
+
- **thorough**: All 4 phases with detailed exploitation scenarios
|
|
68
|
+
|
|
69
|
+
## Integration
|
|
70
|
+
- Complements `dev-review` (best practices) with attacker perspective
|
|
71
|
+
- Works with `sec-codeql-expert` for pattern-based + logic-based coverage
|
|
72
|
+
- Can be chained: `dev-review` → `adversarial-review` for complete coverage
|
|
73
|
+
- Works with `action-validator` for action-space legality checking
|
|
74
|
+
|
|
75
|
+
### Action-Space Legality (AutoHarness Pattern)
|
|
76
|
+
|
|
77
|
+
- [ ] Do agents only call tools within their declared `tools` frontmatter?
|
|
78
|
+
- [ ] Do file operations stay within R002-declared access scope?
|
|
79
|
+
- [ ] Are domain boundaries respected (backend agent not editing frontend files)?
|
|
80
|
+
- [ ] Could an agent's task contract be tightened without losing functionality?
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: omcodex:agora
|
|
3
|
+
description: "Multi-LLM adversarial consensus loop — 3+ LLMs compete to find flaws in designs/specs until unanimous agreement is reached"
|
|
4
|
+
user-invocable: true
|
|
5
|
+
argument-hint: "<document-path> [--rounds N] [--severity-threshold HIGH]"
|
|
6
|
+
effort: max
|
|
7
|
+
scope: core
|
|
8
|
+
version: 1.0.0
|
|
9
|
+
source:
|
|
10
|
+
type: external
|
|
11
|
+
origin: github
|
|
12
|
+
url: https://github.com/baekenough/baekenough-skills
|
|
13
|
+
version: 1.0.0
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# Agora: Multi-LLM Adversarial Consensus
|
|
17
|
+
|
|
18
|
+
3개 이상의 LLM(Claude, Codex/GPT, Gemini)이 경쟁적으로 설계/문서의 결함을 찾고, 만장일치 합의에 도달할 때까지 반복하는 적대적 교차 검증 스킬.
|
|
19
|
+
|
|
20
|
+
## Prerequisites
|
|
21
|
+
|
|
22
|
+
- `codex-exec` skill (Codex/GPT 호출)
|
|
23
|
+
- `gemini-exec` skill (Gemini 호출)
|
|
24
|
+
- Agent Teams enabled (`OMCODEX_AGENT_TEAMS=1`) or Agent tool available
|
|
25
|
+
|
|
26
|
+
## Usage
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
/omcodex:agora docs/design.md # Default: 3 LLMs, unlimited rounds
|
|
30
|
+
/omcodex:agora docs/design.md --rounds 10 # Max 10 rounds
|
|
31
|
+
/omcodex:agora docs/design.md --severity-threshold HIGH # Exit when no HIGH+ findings
|
|
32
|
+
/omcodex:agora docs/design.md --models claude,codex # 2 LLMs only
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Workflow
|
|
36
|
+
|
|
37
|
+
### Phase 1: Setup
|
|
38
|
+
1. Read the target document
|
|
39
|
+
2. Create Agent Team: `TeamCreate("agora-review")`
|
|
40
|
+
3. Create review tasks per focus area
|
|
41
|
+
|
|
42
|
+
### Phase 2: Spawn Reviewers (parallel)
|
|
43
|
+
Spawn 3 reviewers as Agent Team members:
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
Agent(name: "claude-critic", model: opus, effort: max)
|
|
47
|
+
→ 20-point deep adversarial review
|
|
48
|
+
|
|
49
|
+
Agent(name: "codex-critic", model: opus)
|
|
50
|
+
→ Invoke Skill(codex-exec) for GPT perspective + independent Claude analysis
|
|
51
|
+
|
|
52
|
+
Agent(name: "gemini-critic", model: opus)
|
|
53
|
+
→ Invoke Skill(gemini-exec) for Gemini perspective + independent Claude analysis
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### Phase 3: Independent Review
|
|
57
|
+
Each reviewer performs adversarial review with this template:
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
For EACH review point:
|
|
61
|
+
### Round N: [Topic]
|
|
62
|
+
**Severity**: CRITICAL / HIGH / MEDIUM / LOW
|
|
63
|
+
**Flaw**: [Specific, concrete problem description]
|
|
64
|
+
**Evidence**: [Why this is real, not theoretical]
|
|
65
|
+
**Impact**: [What happens if not addressed]
|
|
66
|
+
**Counter-argument**: [Best case FOR the current design]
|
|
67
|
+
**Verdict**: KEEP / MODIFY / REJECT
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
Review areas (adapt to document type):
|
|
71
|
+
- Architecture fundamentals
|
|
72
|
+
- Component/service design
|
|
73
|
+
- Data architecture
|
|
74
|
+
- Security & resilience
|
|
75
|
+
- Feasibility & deployment
|
|
76
|
+
- Testing strategy
|
|
77
|
+
- Operational complexity
|
|
78
|
+
|
|
79
|
+
### Phase 4: Cross-Review (Peer-to-Peer)
|
|
80
|
+
Each reviewer sends findings to the other two via `SendMessage`.
|
|
81
|
+
|
|
82
|
+
Counter-review template:
|
|
83
|
+
1. Which findings do you **AGREE** with? (and why)
|
|
84
|
+
2. Which findings do you **DISAGREE** with? (evidence-based rebuttal)
|
|
85
|
+
3. What did they **MISS** that you caught?
|
|
86
|
+
4. What did they catch that you **MISSED**?
|
|
87
|
+
5. **SEVERITY** adjustments — upgrade or downgrade with justification
|
|
88
|
+
|
|
89
|
+
### Phase 5: Synthesis
|
|
90
|
+
Team lead aggregates all findings:
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
UNANIMOUS CRITICAL: [findings all 3 agreed on]
|
|
94
|
+
STRONG AGREEMENT: [findings 2/3 agreed on]
|
|
95
|
+
SPLIT DECISIONS: [findings with disagreement + resolution]
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Determine verdict:
|
|
99
|
+
- **BUILD**: No CRITICAL, no unresolved HIGH
|
|
100
|
+
- **BUILD WITH CHANGES**: No CRITICAL, HIGH findings have accepted mitigations
|
|
101
|
+
- **REDESIGN**: Any unresolved CRITICAL findings
|
|
102
|
+
- **ABANDON**: Fundamental concept is flawed
|
|
103
|
+
|
|
104
|
+
### Phase 6: Loop (if REDESIGN)
|
|
105
|
+
1. Team lead produces/delegates redesign addressing ALL critical findings
|
|
106
|
+
2. New version sent to ALL reviewers: `SendMessage(to: "*")`
|
|
107
|
+
3. Reviewers re-review → GOTO Phase 4
|
|
108
|
+
4. Repeat until EXIT criteria met
|
|
109
|
+
|
|
110
|
+
### Phase 7: Exit (consensus reached)
|
|
111
|
+
When ALL reviewers agree BUILD or BUILD WITH CHANGES:
|
|
112
|
+
1. Produce final consensus report
|
|
113
|
+
2. Write to `.codex/outputs/sessions/{date}/agora-{topic}-{time}.md`
|
|
114
|
+
3. Shut down team: `SendMessage(to: "*", message: {type: "shutdown_request"})`
|
|
115
|
+
|
|
116
|
+
## Reviewer Principles
|
|
117
|
+
|
|
118
|
+
1. **NEUTRAL** — no reviewer has home team advantage
|
|
119
|
+
2. **COMPETITIVE** — find flaws others missed
|
|
120
|
+
3. **CRITICAL** — "fewer than 5 CRITICAL flaws = not looking hard enough"
|
|
121
|
+
4. **EVIDENCE-BASED** — every finding cites specific evidence
|
|
122
|
+
5. **CONSTRUCTIVE** — every flaw includes recommended fix
|
|
123
|
+
6. **CONVERGENT** — goal is consensus, not endless disagreement
|
|
124
|
+
|
|
125
|
+
## Consensus Criteria
|
|
126
|
+
|
|
127
|
+
| Condition | Required |
|
|
128
|
+
|-----------|----------|
|
|
129
|
+
| CRITICAL findings resolved | ALL |
|
|
130
|
+
| HIGH findings resolved or accepted | ALL |
|
|
131
|
+
| All reviewers rate BUILD or BUILD WITH CHANGES | YES |
|
|
132
|
+
| Cross-review disagreements resolved | ALL |
|
|
133
|
+
|
|
134
|
+
## Output Format
|
|
135
|
+
|
|
136
|
+
```markdown
|
|
137
|
+
# Agora Consensus Report
|
|
138
|
+
|
|
139
|
+
## Document: [path]
|
|
140
|
+
## Rounds: [N]
|
|
141
|
+
## Reviewers: [list with LLM models used]
|
|
142
|
+
|
|
143
|
+
## Verdict: [BUILD / BUILD WITH CHANGES / REDESIGN]
|
|
144
|
+
|
|
145
|
+
## Unanimous Findings
|
|
146
|
+
| # | Finding | Severity | All 3 Agree |
|
|
147
|
+
|---|---------|----------|-------------|
|
|
148
|
+
|
|
149
|
+
## Required Changes Before Build
|
|
150
|
+
1. [change with source reviewer]
|
|
151
|
+
2. ...
|
|
152
|
+
|
|
153
|
+
## Accepted Risks
|
|
154
|
+
- [finding accepted with justification]
|
|
155
|
+
|
|
156
|
+
## Unique Contributions Per Reviewer
|
|
157
|
+
| Reviewer | Findings Others Missed |
|
|
158
|
+
|----------|----------------------|
|
|
159
|
+
|
|
160
|
+
## Process Metrics
|
|
161
|
+
- Rounds: N
|
|
162
|
+
- Total findings: N
|
|
163
|
+
- Cross-adopted: N
|
|
164
|
+
- Severity upgrades: N
|
|
165
|
+
- Severity downgrades: N
|
|
166
|
+
- Disagreements raised: N
|
|
167
|
+
- Disagreements resolved: N/N
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
## Configuration
|
|
171
|
+
|
|
172
|
+
```yaml
|
|
173
|
+
# Default settings
|
|
174
|
+
agora:
|
|
175
|
+
max_rounds: unlimited # Set --rounds to limit
|
|
176
|
+
severity_threshold: HIGH # EXIT when no findings >= threshold
|
|
177
|
+
models:
|
|
178
|
+
- claude (opus, max effort)
|
|
179
|
+
- codex (via codex-exec skill)
|
|
180
|
+
- gemini (via gemini-exec skill)
|
|
181
|
+
review_points: 20 # Per reviewer
|
|
182
|
+
cross_review: true # Peer-to-peer sharing
|
|
183
|
+
auto_redesign: true # Auto-produce redesign on REDESIGN verdict
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
## Anti-Patterns
|
|
187
|
+
|
|
188
|
+
| Anti-Pattern | Why Wrong | Correct |
|
|
189
|
+
|-------------|-----------|---------|
|
|
190
|
+
| Single LLM review | Misses blind spots | 3+ LLMs find complementary flaws |
|
|
191
|
+
| No cross-review | Reviewers don't challenge each other | Peer-to-peer sharing surfaces disagreements |
|
|
192
|
+
| Accepting first BUILD | May miss edge cases | Loop until ALL agree |
|
|
193
|
+
| Ignoring split decisions | Unresolved disagreements fester | Resolve every split with evidence |
|
|
194
|
+
| Push for consensus too fast | Premature agreement | Let reviewers challenge freely |
|