[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M76VMQAPC24F6WFF3F8BY4XM":3,"skill-same:01M76VMQAPC24F6WFF3F8BY4XM":61},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":29,"commitSha":30,"skillDirectory":31,"forksCount":32,"repositoryHtmlUrl":33,"repositoryHomepageUrl":6,"ownerHtmlUrl":34,"ownerBlogUrl":6,"ownerDescription":35,"updatedAt":36,"install":37,"resources":50},"01M76VMQAPC24F6WFF3F8BY4XM","openagents-control",null,"Pattern-first AI framework with approval gates, context-aware code generation, and token-efficient execution. Teaches agents your coding patterns upfront. Code matches your project from the start. Trigger: When building production features, need approval-based workflows, or want pattern-controlled code generation.","davidcoachdev\u002Fdcfiles","davidcoachdev","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F69812733?v=4","01M758C4BR16TAV1N47W319E9V","David H. Caycedo Blum.","01M758C4CCZA2ZYGA0BGMXCDRH",1,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fdavidcoachdev\u002Fdcfiles\u002Fblob\u002Fmain\u002Fconfig\u002F.config\u002Fopencode\u002Fskills\u002Fopenagents-control\u002FSKILL.md",[],[],"2026-11-12 13:55:43",false,"---\nname: openagents-control\ndescription: >\n  Pattern-first AI framework with approval gates, context-aware code generation, and token-efficient execution.\n  Teaches agents your coding patterns upfront. Code matches your project from the start.\n  Trigger: When building production features, need approval-based workflows, or want pattern-controlled code generation.\nlicense: Apache-2.0\nmetadata:\n  author: gentleman-programming\n  version: \"1.0\"\n  inspired_by: darrenhinde\u002FOpenAgentsControl\n---\n\n## When to Use\n\n- Production development with approval gates\n- Pattern-first code generation (teach patterns, generate matching code)\n- Token-efficient agent workflows (MVI principle)\n- Team standards enforcement (repeatable patterns)\n- Complex features requiring validation steps\n- Building with context-aware agents\n\n## Core Concepts\n\n### Pattern-First Philosophy\n\n**Problem:** AI generates generic code. You spend hours refactoring to match your patterns.\n\n**Solution:** Teach patterns upfront. Agents load YOUR standards before generating code.\n\n**Result:** Production-ready code that ships without refactoring.\n\n### The Workflow (6 Steps)\n\n```\n1. Discover Patterns (ContextScout)\n   ↓ Find relevant standards from your context\n2. Propose Plan (Agent)\n   ↓ Create detailed implementation using YOUR patterns\n3. Approve (You)\n   ↓ Human gate: Review and approve before execution\n4. Execute (Agent)\n   ↓ Implement incrementally with YOUR patterns\n5. Validate (Automated)\n   ↓ Type check, lint, tests, code review\n6. Ship (Ready)\n   ↓ Production code, no refactoring needed\n```\n\n### Key Principles\n\n**🎯 Context-Aware:** ContextScout discovers relevant patterns. Agents load YOUR standards. Code matches from start.\n\n**✋ Approval Gates:** Agents propose plans. YOU approve before execution. No surprises. Human-guided workflow.\n\n**⚡ Token Efficient (MVI):** Minimal Viable Information. Only load what's needed. 80% token reduction vs full-context approach.\n\n**📝 Editable Agents:** Control agent behavior via markdown files. No vendor lock-in. Full transparency.\n\n**🔁 Repeatable:** Same patterns → Same quality. Configure once, use forever. Perfect for teams.\n\n## How to Use\n\n### Step 1: Add Your Patterns (10-15 min)\n\nUse `\u002Fadd-context` interactive wizard:\n\n```bash\n\u002Fadd-context\n# Answer 6 questions:\n# 1. Tech stack? (Next.js + TypeScript + PostgreSQL)\n# 2. API example? (paste your endpoint)\n# 3. Component example? (paste your React component)\n# 4. Naming conventions? (kebab-case, PascalCase, camelCase)\n# 5. Code standards? (Zod validation, strict TypeScript, etc.)\n# 6. Security requirements? (input validation, parameterized queries)\n```\n\n**Result:** Agents now understand YOUR patterns.\n\n### Step 2: Start a Feature Request\n\n```bash\nopencode --agent OpenCoder\n> \"Create a user authentication system\"\n```\n\n**What happens:**\n\n1. **Discover** (~1-2 min) - ContextScout finds your patterns\n2. **Propose** (~2-3 min) - Agent shows detailed plan\n3. **Approve** - You review and approve\n4. **Execute** (~10-15 min) - Implement with YOUR patterns\n5. **Validate** (~2-3 min) - Tests, type checking, review\n6. **Ship** - Production-ready code\n\n### Step 3: Approve Before Execution\n\n**Agent proposes:**\n\n```\n## Proposed Implementation\n\n**Components:**\n- user-dashboard.tsx (main page)\n- profile-settings.tsx (settings component)\n- auth-guard.tsx (authentication wrapper)\n\n**API Endpoints:**\n- \u002Fapi\u002Fuser\u002Fprofile (GET, POST)\n- \u002Fapi\u002Fauth\u002Fsession (GET)\n\n**Database:**\n- users table (Drizzle schema)\n- sessions table (Drizzle schema)\n\nAll code will follow YOUR patterns from context.\n\nApprove? [y\u002Fn]\n```\n\n**You approve** → Agent executes with YOUR patterns.\n\n### Step 4: Keep Patterns Updated\n\nAfter each feature:\n\n```bash\n\u002Fadd-context --update\n# Add new patterns you discovered\n# Update naming conventions if they changed\n# Document new standards\n```\n\n**Result:** Your context evolves with your project.\n\n## The ContextScout Pattern (Your Secret Weapon)\n\n### What ContextScout Does\n\nBefore generating ANY code, ContextScout:\n\n1. **Discovers** - Finds relevant patterns from your context files\n2. **Ranks** - Orders by priority (Critical → High → Medium)\n3. **Loads** - Agent uses YOUR standards for generation\n4. **Prevents** - Stops wasted work on irrelevant patterns\n\n### How It Works\n\n```\nYour Request\n    ↓\nContextScout searches .opencode\u002Fcontext\u002F\n    ↓\nFind: tech-stack, api-patterns, component-patterns, naming, standards\n    ↓\nRank by relevance to your request\n    ↓\nAgent loads TOP patterns (not all—only needed)\n    ↓\nGenerate using YOUR patterns\n    ↓\nCode matches project from start ✅\n```\n\n### Example: Adding API Endpoint\n\n**Request:** \"Add a user profile endpoint\"\n\n**ContextScout discovers:**\n- ✅ Your API pattern (Zod validation, error handling)\n- ✅ Your response format (200\u002F201\u002Ferror)\n- ✅ Your database ORM (Drizzle)\n- ✅ Your security (parameterized queries)\n- ❌ NOT loading: Component patterns (not relevant)\n- ❌ NOT loading: UI standards (not relevant)\n\n**Result:** Agent generates endpoint using ONLY relevant patterns. Token efficient.\n\n## MVI Principle: Token Efficiency (80% Reduction)\n\n### Traditional Approach (Wasteful)\n\n```\nLoad entire codebase context\n    ↓ 50KB context\n    ↓ 15,000 tokens\n    ↓ Slow response\n    ↓ High cost\n```\n\n### OAC Approach (MVI - Minimal Viable Information)\n\n```\nLoad only RELEVANT patterns\n    ↓ 5KB context\n    ↓ 1,500 tokens\n    ↓ Fast response\n    ↓ Low cost\n```\n\n**Real benefits:**\n\n- **80% token reduction:** Fewer tokens per request\n- **Faster responses:** Smaller context = quicker processing\n- **Lower costs:** Fewer tokens = cheaper API calls\n- **Better quality:** Focused context = better code matching\n\n### How MVI Works\n\n**File design:**\n\n- **Concepts:** \u003C100 lines (quick to load)\n- **Guides:** \u003C150 lines (digestible)\n- **Examples:** \u003C80 lines (specific, not verbose)\n\n**Lazy loading:**\n\n- Load patterns on-demand (not all at once)\n- Cache frequently used patterns\n- Discover only relevant ones per request\n\n**Result:** Fast, efficient, token-lean workflow.\n\n## For Teams: Repeatable Patterns\n\n### The Team Problem\n\nEvery developer writes code differently:\n- Inconsistent naming conventions\n- Different error handling\n- Various component patterns\n- Hard to maintain\n\n### The OAC Solution\n\nStore team patterns in `.opencode\u002Fcontext\u002Fproject\u002F`. Commit to repo. Everyone uses same standards.\n\n### Team Workflow\n\n```bash\n# Team lead adds patterns once\n\u002Fadd-context\n# Answers questions with team standards\n\n# Commit to repo\ngit add .opencode\u002Fcontext\u002F\ngit commit -m \"Add team coding standards\"\ngit push\n\n# All team members now use same patterns automatically\n# New developers inherit standards on day 1\n```\n\n**Result:** \n- ✅ Consistent code across entire team\n- ✅ No style debates\n- ✅ No refactoring PRs\n- ✅ Onboarding faster (patterns included)\n\n## Approval Gates: Human-Guided AI\n\n### Why Approval Gates Matter\n\n**Without approval gates:**\n```\nAI generates code\n    ↓ You don't know what's coming\n    ↓ \"Oh no, what did it just do?\"\n    ↓ Wasted tokens\n    ↓ Unexpected bugs\n```\n\n**With approval gates:**\n```\nAI proposes plan\n    ↓ You review\n    ↓ You approve or refine\n    ↓ AI executes exactly what you approved\n    ↓ No surprises\n    ↓ Quality gates built-in\n```\n\n### Gate Points\n\nAgents always request approval before:\n\n1. **Writing\u002FEditing Files** - Major changes need human sign-off\n2. **Running Bash Commands** - Execution safety\n3. **Delegating to Subagents** - Complex workflows\n4. **Database Schema Changes** - Critical operations\n5. **Security-Related Code** - Auth, permissions, validation\n\n### Example Gate Flow\n\n```\nAgent: \"I'll create 3 new API endpoints. Approve?\"\nYou: Review proposal\nYou: \"Approve\" → Agent executes with YOUR patterns\n```\n\n## Real-World Example: Building User Auth\n\n### Request\n```\n\"Create a user authentication system with login, register, logout\"\n```\n\n### Step 1: Discover (ContextScout finds your patterns)\n\nFound patterns:\n- Tech stack: Next.js + TypeScript + PostgreSQL\n- API pattern: Zod validation + error handling\n- Component: Functional React + Tailwind\n- Naming: kebab-case files, PascalCase components\n- Standards: Strict TypeScript, parameterized queries\n\n### Step 2: Propose (Agent shows plan)\n\n```\n## Proposed User Authentication System\n\n**Files to create:**\n- lib\u002Fauth.ts - Authentication utilities\n- lib\u002Fschemas\u002Fauth.ts - Zod validation schemas\n- app\u002Fauth\u002Flogin\u002Fpage.tsx - Login component\n- app\u002Fauth\u002Fregister\u002Fpage.tsx - Register component\n- app\u002Fapi\u002Fauth\u002Flogin\u002Froute.ts - Login endpoint\n- app\u002Fapi\u002Fauth\u002Fregister\u002Froute.ts - Register endpoint\n- app\u002Fapi\u002Fauth\u002Flogout\u002Froute.ts - Logout endpoint\n- middleware.ts - Protected route middleware\n\n**Database:**\n- users table with password hashing\n- sessions table for token storage\n\n**All code will follow YOUR patterns:**\n- Zod validation on all endpoints\n- Error handling with your standards\n- Component pattern matching your examples\n- Naming conventions as specified\n\nApprove? [y\u002Fn]\n```\n\n### Step 3: Approve\n\nYou review and approve (or ask for changes).\n\n### Step 4: Execute (Agent implements with YOUR patterns)\n\nGenerates:\n- ✅ Components using your React pattern\n- ✅ APIs using your endpoint pattern\n- ✅ Database schemas using your ORM\n- ✅ Validation using your Zod standards\n- ✅ Error handling your way\n- ✅ Naming matching your conventions\n\n### Step 5: Validate\n\n- ✅ TypeScript strict mode passes\n- ✅ Tests generated and passing\n- ✅ Security review done\n- ✅ Code review passed\n\n### Step 6: Ship\n\nProduction-ready authentication system that:\n- Matches your project exactly\n- No refactoring needed\n- Ready to commit and deploy\n- Team can extend following same patterns\n\n## Integration with Your OpenCode Setup\n\n### Works With Current Agents\n\n- **systematic-debugging** - Uses approval gates for validation\n- **technical-writer** - Documents patterns for team\n- **code-reviewer** - Validates generated code\n- **test-engineer** - Creates tests from patterns\n\n### Synergies\n\n**Systematic Debugging** + **OpenAgents Control:**\n- Approval gates align with debugging phases\n- Proposal review = evidence gathering\n- Execution = implementation phase\n\n**Technical Writer** + **OpenAgents Control:**\n- Documents team patterns\n- Creates context files from documentation\n- Ensures consistency\n\n**Code Reviewer** + **OpenAgents Control:**\n- Reviews all generated code before shipping\n- Validates pattern adherence\n- Quality gate automation\n\n## Pro Tips\n\n### Tip 1: Start Simple\n\nFirst pattern file = Your current code. Answer the 6 questions from `\u002Fadd-context` using what you already do.\n\n```bash\n\u002Fadd-context\n# Use your ACTUAL code as examples\n# Document your REAL conventions\n# List your ACTUAL standards\n```\n\nResult: Agents match what you already do. No friction.\n\n### Tip 2: Update Patterns Regularly\n\nAfter each major feature:\n\n```bash\n\u002Fadd-context --update\n```\n\nKeep patterns fresh as project evolves.\n\n### Tip 3: Use for Onboarding\n\nNew team member?\n\n```bash\ngit clone \u003Crepo>\ncd \u003Crepo>\n# Context files already committed!\n# New dev automatically uses team patterns\n```\n\n### Tip 4: Review Before Approving\n\nAlways:\n1. Read the proposed plan\n2. Check it uses YOUR patterns\n3. Ask for changes if needed\n4. Only approve when satisfied\n\n### Tip 5: Combine with Other Skills\n\n```bash\n# Use systematic-debugging for error handling patterns\n# Use technical-writer for documentation patterns\n# Use code-reviewer for quality validation\n# Use test-engineer for testing patterns\n```\n\n## When to Use (vs When Not To)\n\n### Use OpenAgents Control When:\n\n✅ Building production features (approval gates help)\n✅ You have established coding patterns (pattern-first works best)\n✅ You want code that ships without refactoring (that's the whole point)\n✅ Your team needs consistent standards (repeatable patterns)\n✅ You care about token efficiency (MVI saves 80%)\n✅ You want human-guided AI (approval gates matter)\n\n### Don't Use When:\n\n❌ You're exploring ideas (too much overhead)\n❌ You have no established patterns (learn first, then use this)\n❌ You want maximum speed (approval gates add time)\n❌ You trust AI fully (gates require review)\n\n## Architecture Decision\n\n### Why Skill Instead of Framework Replacement?\n\nOpenAgents Control could be:\n1. Full framework replacement (rewrite entire system)\n2. Skill (integrated as specialized agent)\n\n**We chose: Skill** because:\n\n✅ **Modularity** - Works with existing OpenCode setup\n✅ **Composability** - Combine with other skills (systematic-debugging, code-reviewer, etc.)\n✅ **Optionality** - Use when needed, not forced\n✅ **Low friction** - Load skill, use workflow, done\n✅ **Flexibility** - Teams choose adoption level\n\n## Summary: Pattern-First AI\n\n### Before OpenAgents Control\n\n```\nYour request\n    ↓\nGeneric AI code\n    ↓\nYou refactor hours to match patterns\n    ↓\nTokens burned, time wasted\n```\n\n### After OpenAgents Control\n\n```\nYour request\n    ↓\nContextScout discovers YOUR patterns\n    ↓\nAI generates using YOUR standards\n    ↓\nYou approve\n    ↓\nProduction code, zero refactoring\n```\n\n## Commands\n\n```bash\n# Trigger this skill\nopencode --skill openagents-control\n\n# Add your patterns (interactive wizard)\n\u002Fadd-context\n\n# Update patterns\n\u002Fadd-context --update\n\n# Use with OpenCoder agent\nopencode --agent OpenCoder\n> \"Create a user dashboard\"\n```\n\n## External Resources\n\n- [OpenAgents Control GitHub](https:\u002F\u002Fgithub.com\u002Fdarrenhinde\u002FOpenAgentsControl)\n- [Pattern-First Development](https:\u002F\u002Fgithub.com\u002Fdarrenhinde\u002FOpenAgentsControl\u002Fblob\u002Fmain\u002Fdocs\u002FCONTEXT_SYSTEM_GUIDE.md)\n- [MVI Principle](https:\u002F\u002Fgithub.com\u002Fdarrenhinde\u002FOpenAgentsControl\u002Fblob\u002Fmain\u002Fdocs\u002FMVI_GUIDE.md)\n- [Team Workflows](https:\u002F\u002Fgithub.com\u002Fdarrenhinde\u002FOpenAgentsControl#for-teams-repeatable-patterns)\n","## When to Use\n\n- Production development with approval gates\n- Pattern-first code generation (teach patterns, generate matching code)\n- Token-efficient agent workflows (MVI principle)\n- Team standards enforcement (repeatable patterns)\n- Complex features requiring validation steps\n- Building with context-aware agents\n\n## Core Concepts\n\n### Pattern-First Philosophy\n\n**Problem:** AI generates generic code. You spend hours refactoring to match your patterns.\n\n**Solution:** Teach patterns upfront. Agents load YOUR standards before generating code.\n\n**Result:** Production-ready code that ships without refactoring.\n\n### The Workflow (6 Steps)\n\n```\n1. Discover Patterns (ContextScout)\n   ↓ Find relevant standards from your context\n2. Propose Plan (Agent)\n   ↓ Create detailed implementation using YOUR patterns\n3. Approve (You)\n   ↓ Human gate: Review and approve before execution\n4. Execute (Agent)\n   ↓ Implement incrementally with YOUR patterns\n5. Validate (Automated)\n   ↓ Type check, lint, tests, code review\n6. Ship (Ready)\n   ↓ Production code, no refactoring needed\n```\n\n### Key Principles\n\n**🎯 Context-Aware:** ContextScout discovers relevant patterns. Agents load YOUR standards. Code matches from start.\n\n**✋ Approval Gates:** Agents propose plans. YOU approve before execution. No surprises. Human-guided workflow.\n\n**⚡ Token Efficient (MVI):** Minimal Viable Information. Only load what's needed. 80% token reduction vs full-context approach.\n\n**📝 Editable Agents:** Control agent behavior via markdown files. No vendor lock-in. Full transparency.\n\n**🔁 Repeatable:** Same patterns → Same quality. Configure once, use forever. Perfect for teams.\n\n## How to Use\n\n### Step 1: Add Your Patterns (10-15 min)\n\nUse `\u002Fadd-context` interactive wizard:\n\n```bash\n\u002Fadd-context\n# Answer 6 questions:\n# 1. Tech stack? (Next.js + TypeScript + PostgreSQL)\n# 2. API example? (paste your endpoint)\n# 3. Component example? (paste your React component)\n# 4. Naming conventions? (kebab-case, PascalCase, camelCase)\n# 5. Code standards? (Zod validation, strict TypeScript, etc.)\n# 6. Security requirements? (input validation, parameterized queries)\n```\n\n**Result:** Agents now understand YOUR patterns.\n\n### Step 2: Start a Feature Request\n\n```bash\nopencode --agent OpenCoder\n> \"Create a user authentication system\"\n```\n\n**What happens:**\n\n1. **Discover** (~1-2 min) - ContextScout finds your patterns\n2. **Propose** (~2-3 min) - Agent shows detailed plan\n3. **Approve** - You review and approve\n4. **Execute** (~10-15 min) - Implement with YOUR patterns\n5. **Validate** (~2-3 min) - Tests, type checking, review\n6. **Ship** - Production-ready code\n\n### Step 3: Approve Before Execution\n\n**Agent proposes:**\n\n```\n## Proposed Implementation\n\n**Components:**\n- user-dashboard.tsx (main page)\n- profile-settings.tsx (settings component)\n- auth-guard.tsx (authentication wrapper)\n\n**API Endpoints:**\n- \u002Fapi\u002Fuser\u002Fprofile (GET, POST)\n- \u002Fapi\u002Fauth\u002Fsession (GET)\n\n**Database:**\n- users table (Drizzle schema)\n- sessions table (Drizzle schema)\n\nAll code will follow YOUR patterns from context.\n\nApprove? [y\u002Fn]\n```\n\n**You approve** → Agent executes with YOUR patterns.\n\n### Step 4: Keep Patterns Updated\n\nAfter each feature:\n\n```bash\n\u002Fadd-context --update\n# Add new patterns you discovered\n# Update naming conventions if they changed\n# Document new standards\n```\n\n**Result:** Your context evolves with your project.\n\n## The ContextScout Pattern (Your Secret Weapon)\n\n### What ContextScout Does\n\nBefore generating ANY code, ContextScout:\n\n1. **Discovers** - Finds relevant patterns from your context files\n2. **Ranks** - Orders by priority (Critical → High → Medium)\n3. **Loads** - Agent uses YOUR standards for generation\n4. **Prevents** - Stops wasted work on irrelevant patterns\n\n### How It Works\n\n```\nYour Request\n    ↓\nContextScout searches .opencode\u002Fcontext\u002F\n    ↓\nFind: tech-stack, api-patterns, component-patterns, naming, standards\n    ↓\nRank by relevance to your request\n    ↓\nAgent loads TOP patterns (not all—only needed)\n    ↓\nGenerate using YOUR patterns\n    ↓\nCode matches project from start ✅\n```\n\n### Example: Adding API Endpoint\n\n**Request:** \"Add a user profile endpoint\"\n\n**ContextScout discovers:**\n- ✅ Your API pattern (Zod validation, error handling)\n- ✅ Your response format (200\u002F201\u002Ferror)\n- ✅ Your database ORM (Drizzle)\n- ✅ Your security (parameterized queries)\n- ❌ NOT loading: Component patterns (not relevant)\n- ❌ NOT loading: UI standards (not relevant)\n\n**Result:** Agent generates endpoint using ONLY relevant patterns. Token efficient.\n\n## MVI Principle: Token Efficiency (80% Reduction)\n\n### Traditional Approach (Wasteful)\n\n```\nLoad entire codebase context\n    ↓ 50KB context\n    ↓ 15,000 tokens\n    ↓ Slow response\n    ↓ High cost\n```\n\n### OAC Approach (MVI - Minimal Viable Information)\n\n```\nLoad only RELEVANT patterns\n    ↓ 5KB context\n    ↓ 1,500 tokens\n    ↓ Fast response\n    ↓ Low cost\n```\n\n**Real benefits:**\n\n- **80% token reduction:** Fewer tokens per request\n- **Faster responses:** Smaller context = quicker processing\n- **Lower costs:** Fewer tokens = cheaper API calls\n- **Better quality:** Focused context = better code matching\n\n### How MVI Works\n\n**File design:**\n\n- **Concepts:** \u003C100 lines (quick to load)\n- **Guides:** \u003C150 lines (digestible)\n- **Examples:** \u003C80 lines (specific, not verbose)\n\n**Lazy loading:**\n\n- Load patterns on-demand (not all at once)\n- Cache frequently used patterns\n- Discover only relevant ones per request\n\n**Result:** Fast, efficient, token-lean workflow.\n\n## For Teams: Repeatable Patterns\n\n### The Team Problem\n\nEvery developer writes code differently:\n- Inconsistent naming conventions\n- Different error handling\n- Various component patterns\n- Hard to maintain\n\n### The OAC Solution\n\nStore team patterns in `.opencode\u002Fcontext\u002Fproject\u002F`. Commit to repo. Everyone uses same standards.\n\n### Team Workflow\n\n```bash\n# Team lead adds patterns once\n\u002Fadd-context\n# Answers questions with team standards\n\n# Commit to repo\ngit add .opencode\u002Fcontext\u002F\ngit commit -m \"Add team coding standards\"\ngit push\n\n# All team members now use same patterns automatically\n# New developers inherit standards on day 1\n```\n\n**Result:** \n- ✅ Consistent code across entire team\n- ✅ No style debates\n- ✅ No refactoring PRs\n- ✅ Onboarding faster (patterns included)\n\n## Approval Gates: Human-Guided AI\n\n### Why Approval Gates Matter\n\n**Without approval gates:**\n```\nAI generates code\n    ↓ You don't know what's coming\n    ↓ \"Oh no, what did it just do?\"\n    ↓ Wasted tokens\n    ↓ Unexpected bugs\n```\n\n**With approval gates:**\n```\nAI proposes plan\n    ↓ You review\n    ↓ You approve or refine\n    ↓ AI executes exactly what you approved\n    ↓ No surprises\n    ↓ Quality gates built-in\n```\n\n### Gate Points\n\nAgents always request approval before:\n\n1. **Writing\u002FEditing Files** - Major changes need human sign-off\n2. **Running Bash Commands** - Execution safety\n3. **Delegating to Subagents** - Complex workflows\n4. **Database Schema Changes** - Critical operations\n5. **Security-Related Code** - Auth, permissions, validation\n\n### Example Gate Flow\n\n```\nAgent: \"I'll create 3 new API endpoints. Approve?\"\nYou: Review proposal\nYou: \"Approve\" → Agent executes with YOUR patterns\n```\n\n## Real-World Example: Building User Auth\n\n### Request\n```\n\"Create a user authentication system with login, register, logout\"\n```\n\n### Step 1: Discover (ContextScout finds your patterns)\n\nFound patterns:\n- Tech stack: Next.js + TypeScript + PostgreSQL\n- API pattern: Zod validation + error handling\n- Component: Functional React + Tailwind\n- Naming: kebab-case files, PascalCase components\n- Standards: Strict TypeScript, parameterized queries\n\n### Step 2: Propose (Agent shows plan)\n\n```\n## Proposed User Authentication System\n\n**Files to create:**\n- lib\u002Fauth.ts - Authentication utilities\n- lib\u002Fschemas\u002Fauth.ts - Zod validation schemas\n- app\u002Fauth\u002Flogin\u002Fpage.tsx - Login component\n- app\u002Fauth\u002Fregister\u002Fpage.tsx - Register component\n- app\u002Fapi\u002Fauth\u002Flogin\u002Froute.ts - Login endpoint\n- app\u002Fapi\u002Fauth\u002Fregister\u002Froute.ts - Register endpoint\n- app\u002Fapi\u002Fauth\u002Flogout\u002Froute.ts - Logout endpoint\n- middleware.ts - Protected route middleware\n\n**Database:**\n- users table with password hashing\n- sessions table for token storage\n\n**All code will follow YOUR patterns:**\n- Zod validation on all endpoints\n- Error handling with your standards\n- Component pattern matching your examples\n- Naming conventions as specified\n\nApprove? [y\u002Fn]\n```\n\n### Step 3: Approve\n\nYou review and approve (or ask for changes).\n\n### Step 4: Execute (Agent implements with YOUR patterns)\n\nGenerates:\n- ✅ Components using your React pattern\n- ✅ APIs using your endpoint pattern\n- ✅ Database schemas using your ORM\n- ✅ Validation using your Zod standards\n- ✅ Error handling your way\n- ✅ Naming matching your conventions\n\n### Step 5: Validate\n\n- ✅ TypeScript strict mode passes\n- ✅ Tests generated and passing\n- ✅ Security review done\n- ✅ Code review passed\n\n### Step 6: Ship\n\nProduction-ready authentication system that:\n- Matches your project exactly\n- No refactoring needed\n- Ready to commit and deploy\n- Team can extend following same patterns\n\n## Integration with Your OpenCode Setup\n\n### Works With Current Agents\n\n- **systematic-debugging** - Uses approval gates for validation\n- **technical-writer** - Documents patterns for team\n- **code-reviewer** - Validates generated code\n- **test-engineer** - Creates tests from patterns\n\n### Synergies\n\n**Systematic Debugging** + **OpenAgents Control:**\n- Approval gates align with debugging phases\n- Proposal review = evidence gathering\n- Execution = implementation phase\n\n**Technical Writer** + **OpenAgents Control:**\n- Documents team patterns\n- Creates context files from documentation\n- Ensures consistency\n\n**Code Reviewer** + **OpenAgents Control:**\n- Reviews all generated code before shipping\n- Validates pattern adherence\n- Quality gate automation\n\n## Pro Tips\n\n### Tip 1: Start Simple\n\nFirst pattern file = Your current code. Answer the 6 questions from `\u002Fadd-context` using what you already do.\n\n```bash\n\u002Fadd-context\n# Use your ACTUAL code as examples\n# Document your REAL conventions\n# List your ACTUAL standards\n```\n\nResult: Agents match what you already do. No friction.\n\n### Tip 2: Update Patterns Regularly\n\nAfter each major feature:\n\n```bash\n\u002Fadd-context --update\n```\n\nKeep patterns fresh as project evolves.\n\n### Tip 3: Use for Onboarding\n\nNew team member?\n\n```bash\ngit clone \u003Crepo>\ncd \u003Crepo>\n# Context files already committed!\n# New dev automatically uses team patterns\n```\n\n### Tip 4: Review Before Approving\n\nAlways:\n1. Read the proposed plan\n2. Check it uses YOUR patterns\n3. Ask for changes if needed\n4. Only approve when satisfied\n\n### Tip 5: Combine with Other Skills\n\n```bash\n# Use systematic-debugging for error handling patterns\n# Use technical-writer for documentation patterns\n# Use code-reviewer for quality validation\n# Use test-engineer for testing patterns\n```\n\n## When to Use (vs When Not To)\n\n### Use OpenAgents Control When:\n\n✅ Building production features (approval gates help)\n✅ You have established coding patterns (pattern-first works best)\n✅ You want code that ships without refactoring (that's the whole point)\n✅ Your team needs consistent standards (repeatable patterns)\n✅ You care about token efficiency (MVI saves 80%)\n✅ You want human-guided AI (approval gates matter)\n\n### Don't Use When:\n\n❌ You're exploring ideas (too much overhead)\n❌ You have no established patterns (learn first, then use this)\n❌ You want maximum speed (approval gates add time)\n❌ You trust AI fully (gates require review)\n\n## Architecture Decision\n\n### Why Skill Instead of Framework Replacement?\n\nOpenAgents Control could be:\n1. Full framework replacement (rewrite entire system)\n2. Skill (integrated as specialized agent)\n\n**We chose: Skill** because:\n\n✅ **Modularity** - Works with existing OpenCode setup\n✅ **Composability** - Combine with other skills (systematic-debugging, code-reviewer, etc.)\n✅ **Optionality** - Use when needed, not forced\n✅ **Low friction** - Load skill, use workflow, done\n✅ **Flexibility** - Teams choose adoption level\n\n## Summary: Pattern-First AI\n\n### Before OpenAgents Control\n\n```\nYour request\n    ↓\nGeneric AI code\n    ↓\nYou refactor hours to match patterns\n    ↓\nTokens burned, time wasted\n```\n\n### After OpenAgents Control\n\n```\nYour request\n    ↓\nContextScout discovers YOUR patterns\n    ↓\nAI generates using YOUR standards\n    ↓\nYou approve\n    ↓\nProduction code, zero refactoring\n```\n\n## Commands\n\n```bash\n# Trigger this skill\nopencode --skill openagents-control\n\n# Add your patterns (interactive wizard)\n\u002Fadd-context\n\n# Update patterns\n\u002Fadd-context --update\n\n# Use with OpenCoder agent\nopencode --agent OpenCoder\n> \"Create a user dashboard\"\n```\n\n## External Resources\n\n- [OpenAgents Control GitHub](https:\u002F\u002Fgithub.com\u002Fdarrenhinde\u002FOpenAgentsControl)\n- [Pattern-First Development](https:\u002F\u002Fgithub.com\u002Fdarrenhinde\u002FOpenAgentsControl\u002Fblob\u002Fmain\u002Fdocs\u002FCONTEXT_SYSTEM_GUIDE.md)\n- [MVI Principle](https:\u002F\u002Fgithub.com\u002Fdarrenhinde\u002FOpenAgentsControl\u002Fblob\u002Fmain\u002Fdocs\u002FMVI_GUIDE.md)\n- [Team Workflows](https:\u002F\u002Fgithub.com\u002Fdarrenhinde\u002FOpenAgentsControl#for-teams-repeatable-patterns)\n",{"name":5,"license":15,"metadata":24,"description":28},{"author":25,"version":26,"inspired_by":27},"gentleman-programming","1.0","darrenhinde\u002FOpenAgentsControl","Pattern-first AI framework with approval gates, context-aware code generation, and token-efficient execution. Teaches agents your coding patterns upfront. Code matches your project from the start. Trigger: When building production features, need approval-based workflows, or want pattern-controlled code generation.\n","main","5dc86f90a5cbe45db3acd917825461b3ed6937fb","config\u002F.config\u002Fopencode\u002Fskills\u002Fopenagents-control",0,"https:\u002F\u002Fgithub.com\u002Fdavidcoachdev\u002Fdcfiles","https:\u002F\u002Fgithub.com\u002Fdavidcoachdev","🌐 Apasionado por crear soluciones web escalables y eficientes. \r\n🧑‍🏫 Coach Dev.\r\n💻 Frontend Dev. \r\n🎚️Backend Dev.\r\n📊 Agile\u002FScrum.\r\n🚀100% remoto.","2026-08-26 07:28:05",{"source":8,"skillName":5,"commands":38,"prompt":48,"zipAvailable":49},[39,42,45],{"tool":40,"command":41},"npx","npx skills add davidcoachdev\u002Fdcfiles --skill openagents-control",{"tool":43,"command":44},"bunx","bunx skills add davidcoachdev\u002Fdcfiles --skill openagents-control",{"tool":46,"command":47},"pnpm","pnpm dlx skills add davidcoachdev\u002Fdcfiles --skill openagents-control","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fdavidcoachdev\u002Fdcfiles\u002Fblob\u002Fmain\u002Fconfig\u002F.config\u002Fopencode\u002Fskills\u002Fopenagents-control\u002FSKILL.md",true,[51,57],{"path":52,"resourceType":53,"resourceTypeDesc":54,"sizeBytes":55,"sourceHtmlUrl":56},".skill-meta.json","REFERENCE","参考文档",442,"https:\u002F\u002Fgithub.com\u002Fdavidcoachdev\u002Fdcfiles\u002Fblob\u002Fmain\u002Fconfig\u002F.config\u002Fopencode\u002Fskills\u002Fopenagents-control\u002F.skill-meta.json",{"path":58,"resourceType":53,"resourceTypeDesc":54,"sizeBytes":59,"sourceHtmlUrl":60},"README.md",431,"https:\u002F\u002Fgithub.com\u002Fdavidcoachdev\u002Fdcfiles\u002Fblob\u002Fmain\u002Fconfig\u002F.config\u002Fopencode\u002Fskills\u002Fopenagents-control\u002FREADME.md",[62,69,76,83,91,98],{"skillNo":63,"name":64,"nameZh":6,"description":65,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":66,"categories":67,"keywords":68,"publishedAt":19},"01M7740FETMZY1VTYAEFY1TWY7","zustand-5","Zustand 5 state management patterns. Trigger: When managing React state with Zustand.","https:\u002F\u002Fgithub.com\u002Fdavidcoachdev\u002Fdcfiles\u002Fblob\u002Fmain\u002Fconfig\u002F.config\u002Fopencode\u002Fskills\u002Fzustand-5\u002FSKILL.md",[],[],{"skillNo":70,"name":71,"nameZh":6,"description":72,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":75,"publishedAt":19},"01M773ZZM9V68SA1AKP4WF4J29","zod-4","Zod 4 schema validation patterns. Trigger: When using Zod for validation - breaking changes from v3.","https:\u002F\u002Fgithub.com\u002Fdavidcoachdev\u002Fdcfiles\u002Fblob\u002Fmain\u002Fconfig\u002F.config\u002Fopencode\u002Fskills\u002Fzod-4\u002FSKILL.md",[],[],{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":19},"01M773ZJFR90CQAY0N9QR40QVP","x-bookmark-quote-posts","Workflow para revisar bookmarks de X\u002FTwitter y convertirlos en drafts de quote posts. Accede a la sección de bookmarks vía browser headless, extrae posts recientes, y genera drafts con voz personal del usuario. No publica ni muta X — solo genera contenido para revisión. Trigger: X bookmarks, Twitter bookmarks, quote posts, bookmark automation, crear quote posts, revisar bookmarks, growth content X.","https:\u002F\u002Fgithub.com\u002Fdavidcoachdev\u002Fdcfiles\u002Fblob\u002Fmain\u002Fconfig\u002F.config\u002Fopencode\u002Fskills\u002Fx-bookmark-quote-posts\u002FSKILL.md",[],[],{"skillNo":84,"name":85,"nameZh":6,"description":86,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":87,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":19},"01M773Z2RGV3786FV310SDB0YD","writing-skills","Use when creating new skills, editing existing skills, or verifying skills work before deployment","MIT","https:\u002F\u002Fgithub.com\u002Fdavidcoachdev\u002Fdcfiles\u002Fblob\u002Fmain\u002Fconfig\u002F.config\u002Fopencode\u002Fskills\u002Fwriting-skills\u002FSKILL.md",[],[],{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":87,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":19},"01M773YJH3KDSW467CSS63CSRJ","writing-plans","Use when you have a spec or requirements for a multi-step task, before touching code","https:\u002F\u002Fgithub.com\u002Fdavidcoachdev\u002Fdcfiles\u002Fblob\u002Fmain\u002Fconfig\u002F.config\u002Fopencode\u002Fskills\u002Fwriting-plans\u002FSKILL.md",[],[],{"skillNo":99,"name":100,"nameZh":6,"description":101,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":104,"publishedAt":19},"01M773Y3S3H2CPRK5S8YFHWB5C","work-unit-commits","Plan commits as reviewable work units. Trigger: implementation, commit splitting, chained PRs, or keeping tests and docs with code.","https:\u002F\u002Fgithub.com\u002Fdavidcoachdev\u002Fdcfiles\u002Fblob\u002Fmain\u002Fconfig\u002F.config\u002Fopencode\u002Fskills\u002Fwork-unit-commits\u002FSKILL.md",[],[]]