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,49 @@
|
|
|
1
|
+
# Apache Iceberg Guide
|
|
2
|
+
|
|
3
|
+
Reference documentation for Apache Iceberg open table format best practices.
|
|
4
|
+
|
|
5
|
+
## Source
|
|
6
|
+
|
|
7
|
+
Based on [Apache Iceberg official documentation](https://iceberg.apache.org/docs/latest/) and community best practices.
|
|
8
|
+
|
|
9
|
+
## Categories
|
|
10
|
+
|
|
11
|
+
| Priority | Category | Impact |
|
|
12
|
+
|----------|----------|--------|
|
|
13
|
+
| 1 | Table Maintenance | CRITICAL |
|
|
14
|
+
| 2 | Partition Management | CRITICAL |
|
|
15
|
+
| 3 | Schema Evolution | HIGH |
|
|
16
|
+
| 4 | File Optimization | HIGH |
|
|
17
|
+
| 5 | Catalog Management | MEDIUM |
|
|
18
|
+
| 6 | Integration Patterns | LOW-MEDIUM |
|
|
19
|
+
|
|
20
|
+
## Key Concepts
|
|
21
|
+
|
|
22
|
+
### Table Maintenance
|
|
23
|
+
- **Compaction**: rewrite_data_files to merge small files (target 256-512MB)
|
|
24
|
+
- **Snapshot Expiry**: expire_snapshots to clean old metadata
|
|
25
|
+
- **Orphan File Removal**: remove_orphan_files for storage cleanup
|
|
26
|
+
- **Sort Order Optimization**: sort data for query efficiency
|
|
27
|
+
|
|
28
|
+
### Partition Evolution
|
|
29
|
+
- Add, drop, or replace partition fields without data rewrite
|
|
30
|
+
- Hidden partitioning (no need for partition columns in queries)
|
|
31
|
+
- Partition transforms: identity, bucket, truncate, year/month/day/hour
|
|
32
|
+
|
|
33
|
+
### Schema Evolution
|
|
34
|
+
- Add, rename, reorder, drop columns safely
|
|
35
|
+
- Type promotion (int → long, float → double)
|
|
36
|
+
- Full schema evolution without table rewrite
|
|
37
|
+
|
|
38
|
+
## Usage
|
|
39
|
+
|
|
40
|
+
This guide is referenced by:
|
|
41
|
+
- **Agent**: de-snowflake-expert, de-pipeline-expert
|
|
42
|
+
- **Skill**: (referenced via agents)
|
|
43
|
+
|
|
44
|
+
## External Resources
|
|
45
|
+
|
|
46
|
+
- [Iceberg Official Docs](https://iceberg.apache.org/docs/latest/)
|
|
47
|
+
- [Iceberg Spec](https://iceberg.apache.org/spec/)
|
|
48
|
+
- [Iceberg Java API](https://iceberg.apache.org/docs/latest/api/)
|
|
49
|
+
- [Iceberg Community](https://iceberg.apache.org/community/)
|
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
# Color and Contrast
|
|
2
|
+
|
|
3
|
+
> Reference: Impeccable Design Language — https://github.com/pbakaus/impeccable (Apache 2.0)
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## OKLCH: The Preferred Color Model
|
|
8
|
+
|
|
9
|
+
OKLCH (Oklab Lightness, Chroma, Hue) is a perceptually uniform color space. Unlike HSL, equal numeric changes in OKLCH produce equal perceived differences — making it the right tool for generating accessible, harmonious palettes programmatically.
|
|
10
|
+
|
|
11
|
+
### Structure
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
oklch(lightness% chroma hue)
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
| Channel | Range | Description |
|
|
18
|
+
|---------|-------|-------------|
|
|
19
|
+
| `lightness` | 0%–100% | Perceived brightness |
|
|
20
|
+
| `chroma` | 0–0.4 (approx) | Color saturation/vividness |
|
|
21
|
+
| `hue` | 0–360 | Color angle (red=25, yellow=90, green=145, cyan=200, blue=250, purple=310) |
|
|
22
|
+
|
|
23
|
+
### Why not HSL?
|
|
24
|
+
|
|
25
|
+
HSL's lightness channel is not perceptually uniform. A blue at `hsl(250, 70%, 50%)` and a yellow at `hsl(60, 70%, 50%)` have the same numeric lightness but very different perceived brightness. This makes HSL palettes that "look right" on the screen require constant manual tuning.
|
|
26
|
+
|
|
27
|
+
OKLCH fixes this: a blue at `oklch(50% 0.15 250)` and a yellow at `oklch(50% 0.15 90)` appear equally bright.
|
|
28
|
+
|
|
29
|
+
### Browser support
|
|
30
|
+
|
|
31
|
+
OKLCH is supported in all modern browsers (Chrome 111+, Firefox 113+, Safari 15.4+). For legacy support, provide an HSL fallback:
|
|
32
|
+
|
|
33
|
+
```css
|
|
34
|
+
color: hsl(250, 60%, 40%); /* fallback */
|
|
35
|
+
color: oklch(40% 0.15 250); /* modern */
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## Chroma Constraints
|
|
41
|
+
|
|
42
|
+
### Reduce chroma near white and black extremes
|
|
43
|
+
|
|
44
|
+
At very high or very low lightness values, maximum chroma cannot be rendered — the color clips to the display gamut. Reduce chroma as lightness approaches 0% or 100%:
|
|
45
|
+
|
|
46
|
+
| Lightness range | Max chroma (approx) |
|
|
47
|
+
|-----------------|---------------------|
|
|
48
|
+
| 10%–20% | 0.04–0.08 |
|
|
49
|
+
| 20%–40% | 0.08–0.20 |
|
|
50
|
+
| 40%–60% | 0.15–0.35 |
|
|
51
|
+
| 60%–80% | 0.10–0.25 |
|
|
52
|
+
| 80%–95% | 0.03–0.10 |
|
|
53
|
+
|
|
54
|
+
Check rendered output with [OKLCH.com](https://oklch.com/) — the gamut boundary is shown visually.
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## Neutrals: Tinted, Not Pure Gray
|
|
59
|
+
|
|
60
|
+
Pure grays (chroma 0) appear cold and disconnected from the UI's color palette. Tinting neutrals with a low-chroma version of the brand hue creates cohesion.
|
|
61
|
+
|
|
62
|
+
### Formula
|
|
63
|
+
|
|
64
|
+
Use the brand hue with chroma 0.01–0.02 for neutrals:
|
|
65
|
+
|
|
66
|
+
```css
|
|
67
|
+
:root {
|
|
68
|
+
/* Brand hue: 250 (blue) */
|
|
69
|
+
--neutral-900: oklch(12% 0.01 250);
|
|
70
|
+
--neutral-800: oklch(20% 0.01 250);
|
|
71
|
+
--neutral-700: oklch(30% 0.01 250);
|
|
72
|
+
--neutral-600: oklch(40% 0.01 250);
|
|
73
|
+
--neutral-500: oklch(50% 0.01 250);
|
|
74
|
+
--neutral-400: oklch(60% 0.01 250);
|
|
75
|
+
--neutral-300: oklch(72% 0.01 250);
|
|
76
|
+
--neutral-200: oklch(84% 0.01 250);
|
|
77
|
+
--neutral-100: oklch(93% 0.01 250);
|
|
78
|
+
--neutral-50: oklch(97% 0.01 250);
|
|
79
|
+
}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Temperature
|
|
83
|
+
|
|
84
|
+
| Hue angle | Temperature | Effect |
|
|
85
|
+
|-----------|-------------|--------|
|
|
86
|
+
| ~60° | Warm | Approachable, editorial |
|
|
87
|
+
| ~250° | Cool | Technical, precise, professional |
|
|
88
|
+
|
|
89
|
+
Warm neutrals (cream, off-white) suit consumer and lifestyle products. Cool neutrals suit developer tools, dashboards, and data products.
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## Palette Architecture
|
|
94
|
+
|
|
95
|
+
### Components
|
|
96
|
+
|
|
97
|
+
| Component | Count | Purpose |
|
|
98
|
+
|-----------|-------|---------|
|
|
99
|
+
| Primary | 1 color, 3–5 shades | Brand identity, CTAs, interactive elements |
|
|
100
|
+
| Neutral | 9–11 shades | Backgrounds, borders, text |
|
|
101
|
+
| Semantic | 4 colors (success, warning, danger, info), 2–3 shades each | State communication |
|
|
102
|
+
| Surface | 2–3 variants | Background layering (base, raised, overlay) |
|
|
103
|
+
|
|
104
|
+
### Primary palette (5 shades)
|
|
105
|
+
|
|
106
|
+
```css
|
|
107
|
+
:root {
|
|
108
|
+
--primary-50: oklch(95% 0.05 250); /* tint, hover backgrounds */
|
|
109
|
+
--primary-200: oklch(80% 0.10 250); /* light states */
|
|
110
|
+
--primary-500: oklch(55% 0.20 250); /* primary action */
|
|
111
|
+
--primary-700: oklch(38% 0.18 250); /* pressed, dark variant */
|
|
112
|
+
--primary-900: oklch(22% 0.12 250); /* text on light bg */
|
|
113
|
+
}
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### Semantic palette
|
|
117
|
+
|
|
118
|
+
```css
|
|
119
|
+
:root {
|
|
120
|
+
/* Success */
|
|
121
|
+
--success-light: oklch(92% 0.06 145);
|
|
122
|
+
--success: oklch(50% 0.18 145);
|
|
123
|
+
--success-dark: oklch(35% 0.15 145);
|
|
124
|
+
|
|
125
|
+
/* Warning */
|
|
126
|
+
--warning-light: oklch(93% 0.08 85);
|
|
127
|
+
--warning: oklch(65% 0.20 85);
|
|
128
|
+
--warning-dark: oklch(45% 0.18 85);
|
|
129
|
+
|
|
130
|
+
/* Danger */
|
|
131
|
+
--danger-light: oklch(93% 0.06 25);
|
|
132
|
+
--danger: oklch(50% 0.20 25);
|
|
133
|
+
--danger-dark: oklch(35% 0.18 25);
|
|
134
|
+
|
|
135
|
+
/* Info */
|
|
136
|
+
--info-light: oklch(93% 0.05 230);
|
|
137
|
+
--info: oklch(52% 0.18 230);
|
|
138
|
+
--info-dark: oklch(38% 0.16 230);
|
|
139
|
+
}
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## The 60-30-10 Rule
|
|
145
|
+
|
|
146
|
+
Visual weight should be distributed to create hierarchy without chaos:
|
|
147
|
+
|
|
148
|
+
| Proportion | Role | Example |
|
|
149
|
+
|------------|------|---------|
|
|
150
|
+
| 60% | Dominant (neutral backgrounds) | Page background, card surfaces |
|
|
151
|
+
| 30% | Secondary (supporting) | Sidebar, navigation, secondary panels |
|
|
152
|
+
| 10% | Accent (brand, CTAs) | Buttons, links, highlights, icons |
|
|
153
|
+
|
|
154
|
+
Violating this ratio — for example, a 40% brand-color background — overwhelms the interface and makes it harder to identify interactive elements.
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## WCAG Contrast Requirements
|
|
159
|
+
|
|
160
|
+
Contrast ratio is calculated between foreground and background luminance. Use a contrast checker to verify all text/background combinations.
|
|
161
|
+
|
|
162
|
+
### Minimum ratios
|
|
163
|
+
|
|
164
|
+
| Element | WCAG AA | WCAG AAA |
|
|
165
|
+
|---------|---------|----------|
|
|
166
|
+
| Body text (< 18px / < 14px bold) | 4.5:1 | 7:1 |
|
|
167
|
+
| Large text (≥ 18px / ≥ 14px bold) | 3:1 | 4.5:1 |
|
|
168
|
+
| UI components (borders, icons, input outlines) | 3:1 | 4.5:1 |
|
|
169
|
+
|
|
170
|
+
### Practical targets
|
|
171
|
+
|
|
172
|
+
- Body text: aim for 7:1 (AAA) — the difference in effort is minimal and accessibility is significantly better
|
|
173
|
+
- Large headings: 4.5:1 minimum
|
|
174
|
+
- Placeholder text: WCAG requires 4.5:1; placeholders are not exempt despite their decorative role
|
|
175
|
+
- Disabled elements: WCAG exempts disabled controls from contrast requirements, but aim for 3:1 as a courtesy
|
|
176
|
+
|
|
177
|
+
### Anti-patterns
|
|
178
|
+
|
|
179
|
+
| Anti-pattern | Problem | Fix |
|
|
180
|
+
|--------------|---------|-----|
|
|
181
|
+
| Light gray text on white | Classic failure — looks designed, fails AA | Use `oklch(45% 0.01 250)` on white for safe gray |
|
|
182
|
+
| Gray text on colored background | Double unpredictability — two variables affecting contrast | Test with a contrast checker, not by eye |
|
|
183
|
+
| Red on green | Colorblind failure (deuteranopia/protanopia) | Add pattern or icon; do not rely on color alone |
|
|
184
|
+
| Blue on red | Chromatic aberration causes vibration | Add lightness contrast; avoid hue-only contrast |
|
|
185
|
+
| Yellow on white | Low contrast despite perceived brightness | Yellow on white fails AA unless very dark yellow |
|
|
186
|
+
| Thin text over images | Impossible to guarantee; background varies | Add text shadow, overlay panel, or blur backdrop |
|
|
187
|
+
|
|
188
|
+
### Testing tools
|
|
189
|
+
|
|
190
|
+
- [WebAIM Contrast Checker](https://webaim.org/resources/contrastchecker/)
|
|
191
|
+
- Chrome DevTools: Elements panel → Accessibility → Contrast
|
|
192
|
+
- Firefox DevTools: Accessibility panel
|
|
193
|
+
- Polypane: Built-in contrast checking across all breakpoints
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
## No Pure Gray or Black
|
|
198
|
+
|
|
199
|
+
Pure grays (`oklch(N% 0 0)` or `#808080`) read as cold and disconnected. Tinted grays integrate into the palette.
|
|
200
|
+
|
|
201
|
+
### Rule: chroma 0.005–0.01 minimum
|
|
202
|
+
|
|
203
|
+
```css
|
|
204
|
+
/* WRONG: pure gray */
|
|
205
|
+
color: oklch(50% 0 0);
|
|
206
|
+
|
|
207
|
+
/* CORRECT: tinted neutral */
|
|
208
|
+
color: oklch(50% 0.01 250);
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
### No pure black
|
|
212
|
+
|
|
213
|
+
`#000000` or `oklch(0% 0 0)` is rarely appropriate. High contrast without tint creates harshness. Instead:
|
|
214
|
+
|
|
215
|
+
```css
|
|
216
|
+
/* WRONG */
|
|
217
|
+
--text-primary: #000000;
|
|
218
|
+
|
|
219
|
+
/* CORRECT: near-black with subtle tint */
|
|
220
|
+
--text-primary: oklch(12% 0.01 250);
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## Dark Mode
|
|
226
|
+
|
|
227
|
+
Dark mode is NOT a color inversion. Inversion breaks contrast relationships and produces garish results. Instead, dark mode requires thoughtfully redesigned color relationships.
|
|
228
|
+
|
|
229
|
+
### Principles
|
|
230
|
+
|
|
231
|
+
**Lighter surfaces indicate depth.** In light mode, shadows indicate elevation. In dark mode, lighter backgrounds indicate elevation:
|
|
232
|
+
|
|
233
|
+
| Elevation | Light mode | Dark mode |
|
|
234
|
+
|-----------|-----------|-----------|
|
|
235
|
+
| Page background | Lightest | Darkest |
|
|
236
|
+
| Card | +shadow | Slightly lighter |
|
|
237
|
+
| Modal/overlay | +deeper shadow | Lighter still |
|
|
238
|
+
| Tooltip | Darkest shadow | Lightest surface |
|
|
239
|
+
|
|
240
|
+
**Slightly desaturated accents.** Saturated colors are harder to look at on dark backgrounds for extended periods. Reduce chroma by 0.02–0.04:
|
|
241
|
+
|
|
242
|
+
```css
|
|
243
|
+
@media (prefers-color-scheme: dark) {
|
|
244
|
+
--primary-500: oklch(62% 0.16 250); /* was 0.20 in light mode */
|
|
245
|
+
}
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
**Dark gray, never pure black.** Use 12–18% lightness for the base background:
|
|
249
|
+
|
|
250
|
+
```css
|
|
251
|
+
@media (prefers-color-scheme: dark) {
|
|
252
|
+
--surface-base: oklch(14% 0.01 250); /* main background */
|
|
253
|
+
--surface-raised: oklch(18% 0.01 250); /* cards */
|
|
254
|
+
--surface-overlay: oklch(22% 0.01 250); /* modals */
|
|
255
|
+
}
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
**Redefine semantic tokens, do not invert them.** Semantic tokens exist precisely for this purpose:
|
|
259
|
+
|
|
260
|
+
```css
|
|
261
|
+
:root {
|
|
262
|
+
--text-body: oklch(25% 0.01 250);
|
|
263
|
+
--text-muted: oklch(50% 0.01 250);
|
|
264
|
+
--bg-base: oklch(98% 0.01 250);
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
@media (prefers-color-scheme: dark) {
|
|
268
|
+
--text-body: oklch(90% 0.01 250);
|
|
269
|
+
--text-muted: oklch(65% 0.01 250);
|
|
270
|
+
--bg-base: oklch(14% 0.01 250);
|
|
271
|
+
}
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
### Dark mode testing
|
|
275
|
+
|
|
276
|
+
- DevTools: Rendering panel → Emulate CSS media feature prefers-color-scheme
|
|
277
|
+
- Test WCAG contrast ratios in dark mode independently — they differ from light mode
|
|
278
|
+
- Test with vision emulation filters (protanopia, deuteranopia, achromatopsia) in DevTools
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
name: impeccable-design
|
|
2
|
+
description: AI design language reference — typography, color, motion, and UX writing for production-grade UI
|
|
3
|
+
source:
|
|
4
|
+
type: external
|
|
5
|
+
origin: github
|
|
6
|
+
url: https://github.com/pbakaus/impeccable
|
|
7
|
+
license: Apache-2.0
|
|
8
|
+
documents:
|
|
9
|
+
- typography.md
|
|
10
|
+
- color-and-contrast.md
|
|
11
|
+
- motion-design.md
|
|
12
|
+
- ux-writing.md
|