@abarcenas/ai-workflow-template 1.2.0 → 1.13.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/.agents/instructions/learned-knowledge.instructions.md +46 -0
- package/{.github → .agents}/skills/architecture-blueprint-generator/SKILL.md +57 -1
- package/.agents/skills/cavecrew/SKILL.md +82 -0
- package/.agents/skills/caveman/SKILL.md +74 -0
- package/.agents/skills/caveman-commit/SKILL.md +65 -0
- package/.agents/skills/caveman-compress/README.md +163 -0
- package/.agents/skills/caveman-compress/SECURITY.md +31 -0
- package/.agents/skills/caveman-compress/SKILL.md +111 -0
- package/.agents/skills/caveman-compress/scripts/__init__.py +9 -0
- package/.agents/skills/caveman-compress/scripts/__main__.py +3 -0
- package/.agents/skills/caveman-compress/scripts/benchmark.py +78 -0
- package/.agents/skills/caveman-compress/scripts/cli.py +85 -0
- package/.agents/skills/caveman-compress/scripts/compress.py +254 -0
- package/.agents/skills/caveman-compress/scripts/detect.py +121 -0
- package/.agents/skills/caveman-compress/scripts/validate.py +213 -0
- package/.agents/skills/caveman-help/SKILL.md +59 -0
- package/.agents/skills/caveman-review/SKILL.md +55 -0
- package/.agents/skills/caveman-stats/SKILL.md +10 -0
- package/.agents/skills/compress/SKILL.md +111 -0
- package/.agents/skills/compress/scripts/__init__.py +9 -0
- package/.agents/skills/compress/scripts/__main__.py +3 -0
- package/.agents/skills/compress/scripts/benchmark.py +78 -0
- package/.agents/skills/compress/scripts/cli.py +85 -0
- package/.agents/skills/compress/scripts/compress.py +254 -0
- package/.agents/skills/compress/scripts/detect.py +121 -0
- package/.agents/skills/compress/scripts/validate.py +213 -0
- package/AGENTS.md +149 -0
- package/README.md +197 -60
- package/opencode.mcp.example.json +54 -0
- package/package.json +13 -5
- package/scripts/mcp/playwright-mcp-launcher.js +46 -0
- package/scripts/sync.js +50 -12
- package/.github/agents/implementation-plan.agent.md +0 -192
- package/.github/agents/plan.agent.md +0 -135
- package/.github/agents/research-spike.agent.md +0 -204
- package/.github/prompts/copilot-instructions-blueprint-generator.prompt.md +0 -317
- /package/{.github → .agents}/instructions/agent-safety.instructions.md +0 -0
- /package/{.github → .agents}/instructions/agent-skill.instructions.md +0 -0
- /package/{.github → .agents}/instructions/agent.instructions.md +0 -0
- /package/{.github → .agents}/instructions/ai-prompt-engineering-safety.instructions.md +0 -0
- /package/{.github → .agents}/instructions/angular.instructions.md +0 -0
- /package/{.github → .agents}/instructions/context7.instructions.md +0 -0
- /package/{.github → .agents}/instructions/go.instructions.md +0 -0
- /package/{.github → .agents}/instructions/html-to-css-guide.instructions.md +0 -0
- /package/{.github → .agents}/instructions/instructions.instructions.md +0 -0
- /package/{.github → .agents}/instructions/markdown.instructions.md +0 -0
- /package/{.github → .agents}/instructions/memory-bank.instructions.md +0 -0
- /package/{.github → .agents}/instructions/nodejs-vitest.instructions.md +0 -0
- /package/{.github → .agents}/instructions/playwright-typescript.instructions.md +0 -0
- /package/{.github → .agents}/instructions/prompt.instructions.md +0 -0
- /package/{.github → .agents}/instructions/security-owasp.instructions.md +0 -0
- /package/{.github → .agents}/instructions/shell.instructions.md +0 -0
- /package/{.github → .agents}/instructions/task-implementation.instructions.md +0 -0
- /package/{.github → .agents}/instructions/typescript.instructions.md +0 -0
- /package/{.github → .agents}/prompts/documentation-writer.prompt.md +0 -0
- /package/{.github → .agents}/prompts/editconfig.prompt.md +0 -0
- /package/{.github → .agents}/prompts/playwright-explore.prompt.md +0 -0
- /package/{.github → .agents}/prompts/playwright-generate-test.prompt.md +0 -0
- /package/{.github → .agents}/skills/agent-governance/SKILL.md +0 -0
- /package/{.github → .agents}/skills/boost-prompt/SKILL.md +0 -0
- /package/{.github → .agents}/skills/chrome-devtools/SKILL.md +0 -0
- /package/{.github → .agents}/skills/context-map/SKILL.md +0 -0
- /package/{.github → .agents}/skills/conventional-commit/SKILL.md +0 -0
- /package/{.github → .agents}/skills/create-implementation-plan/SKILL.md +0 -0
- /package/{.github → .agents}/skills/create-readme/SKILL.md +0 -0
- /package/{.github → .agents}/skills/create-specification/SKILL.md +0 -0
- /package/{.github → .agents}/skills/editorconfig/SKILL.md +0 -0
- /package/{.github → .agents}/skills/gh-cli/SKILL.md +0 -0
- /package/{.github → .agents}/skills/git-commit/SKILL.md +0 -0
- /package/{.github → .agents}/skills/github-issues/SKILL.md +0 -0
- /package/{.github → .agents}/skills/github-issues/references/templates.md +0 -0
- /package/{.github → .agents}/skills/microsoft-docs/SKILL.md +0 -0
- /package/{.github → .agents}/skills/playwright-explore-website/SKILL.md +0 -0
- /package/{.github → .agents}/skills/playwright-generate-test/SKILL.md +0 -0
- /package/{.github → .agents}/skills/polygot-test-agent/SKILL.md +0 -0
- /package/{.github → .agents}/skills/polygot-test-agent/unit-test-genearation.prompt.md +0 -0
- /package/{.github → .agents}/skills/prompt-builder/SKILL.md +0 -0
package/AGENTS.md
ADDED
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
# opencode Agent Instructions
|
|
2
|
+
|
|
3
|
+
## Project Context
|
|
4
|
+
|
|
5
|
+
This project includes AI-assisted development configuration distributed through the `ai-workflow-template` package. The key directories are:
|
|
6
|
+
|
|
7
|
+
- `.agents/instructions/` — Language, framework, and workflow instructions
|
|
8
|
+
- `.agents/skills/` — Reusable skill definitions for task-based workflows
|
|
9
|
+
- `.agents/agents/` — Specialized agent definitions for planning, research, and implementation
|
|
10
|
+
- `.agents/prompts/` — Reusable prompt templates
|
|
11
|
+
|
|
12
|
+
## Core Workflow
|
|
13
|
+
|
|
14
|
+
1. **Understand before acting** — Read relevant instructions from `.agents/instructions/` before working with specific technologies
|
|
15
|
+
2. **Plan before implementing** — Use `.agents/agents/plan.agent.md` or `.agents/agents/implementation-plan.agent.md` patterns for structured work
|
|
16
|
+
3. **Track progress** — Update `.copilot-tracking/changes/*.md` after each task (see `.agents/instructions/task-implementation.instructions.md`)
|
|
17
|
+
4. **Maintain context** — Keep memory bank files updated (see `.agents/instructions/memory-bank.instructions.md`)
|
|
18
|
+
|
|
19
|
+
## Instructions Reference
|
|
20
|
+
|
|
21
|
+
| Scope | File |
|
|
22
|
+
|---|---|
|
|
23
|
+
| All work | `.agents/instructions/memory-bank.instructions.md` |
|
|
24
|
+
| Task implementation | `.agents/instructions/task-implementation.instructions.md` |
|
|
25
|
+
| TypeScript | `.agents/instructions/typescript.instructions.md` |
|
|
26
|
+
| Node.js / Vitest | `.agents/instructions/nodejs-vitest.instructions.md` |
|
|
27
|
+
| Shell scripts | `.agents/instructions/shell.instructions.md` |
|
|
28
|
+
| Go | `.agents/instructions/go.instructions.md` |
|
|
29
|
+
| Angular | `.agents/instructions/angular.instructions.md` |
|
|
30
|
+
| Markdown docs | `.agents/instructions/markdown.instructions.md` |
|
|
31
|
+
| Prompts | `.agents/instructions/prompt.instructions.md` |
|
|
32
|
+
| Agent files | `.agents/instructions/agent.instructions.md` |
|
|
33
|
+
| Agent skills | `.agents/instructions/agent-skill.instructions.md` |
|
|
34
|
+
| Security | `.agents/instructions/security-owasp.instructions.md` |
|
|
35
|
+
| Playwright tests | `.agents/instructions/playwright-typescript.instructions.md` |
|
|
36
|
+
| Instructions files | `.agents/instructions/instructions.instructions.md` |
|
|
37
|
+
| Agent safety | `.agents/instructions/agent-safety.instructions.md` |
|
|
38
|
+
| AI safety | `.agents/instructions/ai-prompt-engineering-safety.instructions.md` |
|
|
39
|
+
| Context7 | `.agents/instructions/context7.instructions.md` |
|
|
40
|
+
| HTML/CSS styling | `.agents/instructions/html-to-css-guide.instructions.md` |
|
|
41
|
+
|
|
42
|
+
## Available Skills
|
|
43
|
+
|
|
44
|
+
Skills in `.agents/skills/` provide structured workflows for common tasks. Load them when the task matches the skill's purpose:
|
|
45
|
+
|
|
46
|
+
- `architecture-blueprint-generator` — Generate project architecture blueprints
|
|
47
|
+
- `conventional-commit` — Create conventional commit messages
|
|
48
|
+
- `create-implementation-plan` — Create structured implementation plans
|
|
49
|
+
- `create-readme` — Generate README files
|
|
50
|
+
- `create-specification` — Create specification files for GenAI consumption
|
|
51
|
+
- `context-map` — Map relevant files before making changes
|
|
52
|
+
- `editorconfig` — Generate .editorconfig files
|
|
53
|
+
- `git-commit` — Execute safe git commits
|
|
54
|
+
- `github-issues` — Manage GitHub issues via MCP
|
|
55
|
+
- `microsoft-docs` — Query Microsoft documentation
|
|
56
|
+
- `playwright-explore-website` — Explore websites with Playwright
|
|
57
|
+
- `playwright-generate-test` — Generate Playwright tests
|
|
58
|
+
- `polygot-test-agent` — Multi-agent polyglot test generation
|
|
59
|
+
- `prompt-builder` — Build high-quality prompts
|
|
60
|
+
- `agent-governance` — Add governance and safety to agent systems
|
|
61
|
+
- `boost-prompt` — Iteratively refine prompts
|
|
62
|
+
- `chrome-devtools` — Browser automation via Chrome DevTools MCP
|
|
63
|
+
- `gh-cli` — GitHub CLI reference
|
|
64
|
+
- `caveman` — Ultra-compressed communication mode
|
|
65
|
+
- `caveman-commit` — Compressed commit message generator
|
|
66
|
+
- `caveman-compress` — Token compression tool
|
|
67
|
+
- `caveman-help` — Help system for caveman skills
|
|
68
|
+
- `caveman-review` — Automated code review
|
|
69
|
+
- `caveman-stats` — Tracking and statistics for caveman usage
|
|
70
|
+
- `cavecrew` — Multi-agent coordination for caveman skills
|
|
71
|
+
- `compress` — General compression utilities
|
|
72
|
+
|
|
73
|
+
## Available Prompts
|
|
74
|
+
|
|
75
|
+
Prompts in `.agents/prompts/` can be invoked directly:
|
|
76
|
+
|
|
77
|
+
- `editconfig` — Generate .editorconfig
|
|
78
|
+
- `playwright-explore` — Explore a website
|
|
79
|
+
- `playwright-generate-test` — Generate Playwright tests
|
|
80
|
+
- `documentation-writer` — Write documentation (Diataxis framework)
|
|
81
|
+
|
|
82
|
+
## Available Agent Workflows
|
|
83
|
+
|
|
84
|
+
These agent workflows (from `.agents/agents/`) define specialized modes of operation. Invoke the relevant workflow at the start of a task by stating which mode you want to activate.
|
|
85
|
+
|
|
86
|
+
### Plan Mode — Strategic Planning & Architecture
|
|
87
|
+
|
|
88
|
+
Use this when starting a new feature, refactoring, or any non-trivial change. Follow this sequence:
|
|
89
|
+
|
|
90
|
+
1. **Understand the Goal** — Ask clarifying questions about requirements and goals
|
|
91
|
+
2. **Explore Context** — Examine relevant files, components, and systems that will be affected
|
|
92
|
+
3. **Identify Constraints** — Determine technical limitations, dependencies, and requirements
|
|
93
|
+
4. **Clarify Scope** — Establish how extensive the changes should be
|
|
94
|
+
5. **Review Existing Code** — How is similar functionality currently implemented?
|
|
95
|
+
6. **Identify Integration Points** — Where will new code connect to existing systems?
|
|
96
|
+
7. **Plan Step-by-Step** — Create a logical sequence for implementation
|
|
97
|
+
8. **Consider Testing** — How can the implementation be validated?
|
|
98
|
+
9. **Present Clear Plans** — Provide detailed strategy with reasoning, file paths, and order
|
|
99
|
+
|
|
100
|
+
Always prioritize understanding and planning over immediate implementation. Break down complex requirements into manageable components. Propose multiple approaches with trade-offs when viable alternatives exist.
|
|
101
|
+
|
|
102
|
+
### Implementation Plan Generation
|
|
103
|
+
|
|
104
|
+
Use this to create deterministic, structured plans saved to `/plan/`. Follow this template:
|
|
105
|
+
|
|
106
|
+
- Save files as `/plan/[purpose]-[component]-[version].md`
|
|
107
|
+
- Purpose prefixes: `upgrade|refactor|feature|data|infrastructure|process|architecture|design`
|
|
108
|
+
- **Required front matter**: `goal`, `version`, `date_created`, `status` (Completed/In progress/Planned/Deprecated/On Hold), `tags`
|
|
109
|
+
- **Required sections** (in order):
|
|
110
|
+
1. Introduction (with status badge)
|
|
111
|
+
2. Requirements & Constraints (with REQ-, SEC-, CON- identifiers)
|
|
112
|
+
3. Implementation Steps (phases with task tables: Task ID, Description, Completed, Date)
|
|
113
|
+
4. Alternatives (ALT- identifiers with rationale)
|
|
114
|
+
5. Dependencies (DEP- identifiers)
|
|
115
|
+
6. Files (FILE- identifiers)
|
|
116
|
+
7. Testing (TEST- identifiers)
|
|
117
|
+
8. Risks & Assumptions (RISK-, ASSUMPTION- identifiers)
|
|
118
|
+
9. Related Specifications
|
|
119
|
+
|
|
120
|
+
Plans must be deterministic, self-contained, and immediately actionable. Use unambiguous language, specific file paths, and explicit completion criteria per task. DO NOT make code edits — only generate the plan.
|
|
121
|
+
|
|
122
|
+
### Research Spike — Systematic Technical Investigation
|
|
123
|
+
|
|
124
|
+
Use this when investigating technical unknowns, evaluating libraries, or validating approaches. Follow this process:
|
|
125
|
+
|
|
126
|
+
1. **Parse Spike** — Read and understand the spike document; identify all research questions and success criteria
|
|
127
|
+
2. **Investigate Exhaustively** — Research official docs, search for code examples, examine real implementations, explore edge cases
|
|
128
|
+
3. **Recursive Research** — For every new term/concept discovered, immediately investigate it; continue until no new relevant information emerges
|
|
129
|
+
4. **Cross-Reference** — Validate findings across multiple sources; document both successes AND dead ends
|
|
130
|
+
5. **Experimental Validation** — Ask permission before creating files or running commands; design minimal proof-of-concept tests
|
|
131
|
+
6. **Continuous Documentation** — Update the spike document continuously as discoveries are made (not just at the end)
|
|
132
|
+
7. **Evidence Standards** — Cite specific sources with URLs and versions; include timestamps; note limitations
|
|
133
|
+
|
|
134
|
+
Always ask user permission before: creating files, running commands, modifying the system, or experimental operations.
|
|
135
|
+
|
|
136
|
+
### Feature Pipeline — Stripped-Down Sequential Pipeline
|
|
137
|
+
|
|
138
|
+
Use this when you want a fixed, opinionated pipeline: **implementer → designer → coder → tracker**. It bootstraps architecture context, supports step-by-step confirmation, logs progress, and persists lessons learned.
|
|
139
|
+
|
|
140
|
+
The agent file is at `.opencode/agents/orchestrator/feature-pipeline.agent.md`.
|
|
141
|
+
|
|
142
|
+
**When to use:** You want a predictable, four-step feature pipeline without dynamic agent selection. The orchestrator agent is more flexible; this is more opinionated.
|
|
143
|
+
|
|
144
|
+
## Additional Resources
|
|
145
|
+
|
|
146
|
+
### Playwright MCP Configuration
|
|
147
|
+
|
|
148
|
+
For details on how Playwright MCP integrates with the headed mode debugging configuration, see:
|
|
149
|
+
- **Docs**: `docs/playwright-mcp-configuration.md`
|
package/README.md
CHANGED
|
@@ -1,111 +1,248 @@
|
|
|
1
|
-
# AI Workflow Template
|
|
1
|
+
# 🤖 AI Workflow Template
|
|
2
2
|
|
|
3
|
-
Publishable AI workflow starter pack for GitHub Copilot
|
|
3
|
+
**Publishable AI workflow starter pack for GitHub Copilot** - Auto-syncing, version-managed, npm-distributed agent configuration suite.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
---
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
## ✨ What This Package Does
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
This isn't a one-off template to clone—it's a **live npm package** that distributes AI workflow configurations to consumer projects. When installed, it automatically syncs its intelligent agent setup into your project and keeps everything updated over time.
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
- Reusable skills in `.github/skills/`
|
|
13
|
-
- Prompt templates in `.github/prompts/`
|
|
14
|
-
- Custom agents in `.github/agents/`
|
|
15
|
-
- Language and framework instructions in `.github/instructions/`
|
|
16
|
-
- Version auto-bumping via Husky pre-commit hook
|
|
17
|
-
- npm publishing workflow on merge to `main`
|
|
11
|
+
### 🎯 Included Capabilities
|
|
18
12
|
|
|
19
|
-
|
|
13
|
+
- ⚙️ **27+ Specialized AI Skills** - Reusable, task-based workflows (`.agents/skills/`)
|
|
14
|
+
- 🧠 **Smart Agent Frameworks** - Plan Mode, Implementation Plans, Research Spikes (`.agents/agents/`)
|
|
15
|
+
- 📝 **Framework Instructions** - Technology-specific guidance (`.agents/instructions/`)
|
|
16
|
+
- 💬 **Prompt Templates** - Ready-to-use prompt blueprints (`.agents/prompts/`)
|
|
17
|
+
- 🏃♂️ **Caveman Mode** - Ultra-compressed communication for token efficiency
|
|
18
|
+
- 🧪 **Playwright Testing** - Automated testing with MCP integration
|
|
19
|
+
- 📦 **Version Auto-Bumping** - Husky-managed semantic versioning
|
|
20
|
+
- 🚀 **Auto-Publishing** - npm publish on merge to `main`
|
|
20
21
|
|
|
21
|
-
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## 🚀 Install
|
|
25
|
+
|
|
26
|
+
Install directly into the project that needs AI workflow configuration:
|
|
22
27
|
|
|
23
28
|
```bash
|
|
24
|
-
npm install ai-workflow-template
|
|
29
|
+
npm install @abarcenas/ai-workflow-template
|
|
25
30
|
```
|
|
26
31
|
|
|
27
|
-
|
|
32
|
+
The package runs `postinstall` automatically to sync configurations.
|
|
28
33
|
|
|
29
|
-
|
|
34
|
+
---
|
|
30
35
|
|
|
31
|
-
|
|
36
|
+
## 🔄 Sync Behavior
|
|
32
37
|
|
|
33
|
-
|
|
34
|
-
- Files that have not been edited locally are refreshed from the package
|
|
35
|
-
- Files that were modified locally are skipped by default
|
|
38
|
+
The sync script runs automatically but offers flexible control:
|
|
36
39
|
|
|
37
|
-
### Manual
|
|
38
|
-
|
|
39
|
-
Use the sync script directly when you want to refresh the consumer project on demand.
|
|
40
|
+
### 🔧 Manual Sync Options
|
|
40
41
|
|
|
41
42
|
```bash
|
|
43
|
+
# Preview changes without applying
|
|
44
|
+
npm run sync -- --dry-run
|
|
45
|
+
|
|
46
|
+
# Force overwrite local changes
|
|
47
|
+
npm run sync -- --force
|
|
48
|
+
|
|
49
|
+
# Normal sync
|
|
42
50
|
npm run sync
|
|
43
51
|
```
|
|
44
52
|
|
|
45
|
-
|
|
53
|
+
**Smart Sync Rules:**
|
|
54
|
+
- ✅ New files are copied automatically
|
|
55
|
+
- ✅ Unmodified files are refreshed from the package
|
|
56
|
+
- ✅ Locally edited files are preserved (skipped by default)
|
|
57
|
+
- ✅ GitHub Actions workflows are excluded from consumer sync (`.github/workflows/`)
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## 📚 Core Structure
|
|
62
|
+
|
|
63
|
+
Post-install, your project receives this organized structure:
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
.agents/
|
|
67
|
+
├── 📖 instructions/ # 17 instruction sets (frameworks, workflows, security)
|
|
68
|
+
├── 🛠️ skills/ # 27+ specialized AI skills with tools
|
|
69
|
+
├── 🤖 agents/ # 3 agent workflow patterns
|
|
70
|
+
├── 💬 prompts/ # Reusable prompt templates
|
|
71
|
+
└── 📦 compress/ # Token optimization tools
|
|
72
|
+
|
|
73
|
+
.github/
|
|
74
|
+
└── workflows/ # CI/CD automation (excluded from sync)
|
|
75
|
+
|
|
76
|
+
docs/
|
|
77
|
+
└── playwright-mcp-configuration.md # Testing integration guide
|
|
78
|
+
|
|
79
|
+
AGENTS.md # Master instruction file with agent guidance
|
|
80
|
+
|
|
81
|
+
## 🎯 Multi-Agent Orchestrator
|
|
82
|
+
|
|
83
|
+
The project includes a **multi-agent orchestrator** that dynamically builds and runs development pipelines using specialized sub-agents.
|
|
84
|
+
|
|
85
|
+
### Agents
|
|
86
|
+
|
|
87
|
+
| Agent | File | Role |
|
|
88
|
+
|---|---|---|
|
|
89
|
+
| **Orchestrator** | `.opencode/agents/orchestrator.agent.md` | Master — analyzes requests, builds pipelines, delegates |
|
|
90
|
+
| Researcher | `.opencode/agents/researcher.agent.md` | Technical investigation, library evaluation |
|
|
91
|
+
| Architect | `.opencode/agents/architect.agent.md` | System design, component architecture |
|
|
92
|
+
| Implementer | `.opencode/agents/implementer.agent.md` | Translates designs into implementation plans |
|
|
93
|
+
| Designer | `.opencode/agents/designer.agent.md` | UI/UX, styling, responsive design |
|
|
94
|
+
| Coder | `.opencode/agents/coder.agent.md` | Production code implementation |
|
|
95
|
+
| Unit Tester | `.opencode/agents/unit-tester.agent.md` | Unit and integration tests |
|
|
96
|
+
| E2E Tester | `.opencode/agents/e2e-tester.agent.md` | Playwright browser tests |
|
|
97
|
+
| Reviewer | `.opencode/agents/reviewer.agent.md` | Code review, security audit |
|
|
98
|
+
| Deployer | `.opencode/agents/deployer.agent.md` | CI/CD, deployment scripts |
|
|
99
|
+
| Tracker | `.opencode/agents/tracker.agent.md` | Documentation recorder |
|
|
100
|
+
|
|
101
|
+
### How to Use
|
|
102
|
+
|
|
103
|
+
Invoke the orchestrator with `@orchestrator` followed by your task:
|
|
46
104
|
|
|
47
105
|
```bash
|
|
48
|
-
|
|
106
|
+
# Full automated pipeline (auto-bootstraps architecture on first run)
|
|
107
|
+
@orchestrator Add a user login feature with email verification
|
|
49
108
|
```
|
|
50
109
|
|
|
51
|
-
|
|
110
|
+
```bash
|
|
111
|
+
# Quick execution without step-by-step confirmation
|
|
112
|
+
@orchestrator full pipeline: refactor authentication to use JWT
|
|
113
|
+
```
|
|
52
114
|
|
|
53
115
|
```bash
|
|
54
|
-
|
|
116
|
+
# Specific scope — only the relevant agents run
|
|
117
|
+
@orchestrator fix the pagination bug in the search results component
|
|
55
118
|
```
|
|
56
119
|
|
|
57
|
-
|
|
120
|
+
#### What Happens When You Run the Orchestrator
|
|
121
|
+
|
|
122
|
+
1. **Step 0** — On first run only: auto-detects your project's tech stack, architecture patterns, and layer structure (via the architecture-blueprint-generator skill). Subsequent runs skip this.
|
|
123
|
+
2. **Steps 1-2** — Analyzes your request and builds a pipeline of the relevant sub-agents.
|
|
124
|
+
3. **Steps 3-4** — Executes each agent sequentially; you can confirm or skip each step (or enable auto-confirm for hands-off execution).
|
|
125
|
+
4. **Step 5** — Tracker agent documents everything to `docs/tracker-log.md`.
|
|
126
|
+
5. **Steps 6-7** — Presents results and persists new knowledge so the system gets smarter over time.
|
|
58
127
|
|
|
59
|
-
|
|
128
|
+
#### First-Run Behavior
|
|
60
129
|
|
|
61
|
-
|
|
62
|
-
-
|
|
130
|
+
The very first time you use `@orchestrator` in a project, it automatically runs the architecture-blueprint-generator skill to:
|
|
131
|
+
- Detect your tech stack (frameworks, databases, infrastructure)
|
|
132
|
+
- Identify architectural patterns (Clean Architecture, MVC, etc.)
|
|
133
|
+
- Map layer structure and dependency rules
|
|
134
|
+
- Write the context to `docs/.architecture-context.md` and `.agents/instructions/learned-knowledge.instructions.md`
|
|
63
135
|
|
|
64
|
-
|
|
136
|
+
All subsequent runs skip this — agents get architecture context pre-filled.
|
|
65
137
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
138
|
+
#### MCP Tooling
|
|
139
|
+
|
|
140
|
+
Some agents require MCP servers configured in `opencode.mcp.json` (copy from `opencode.mcp.example.json`):
|
|
141
|
+
|
|
142
|
+
| Agent | Required MCP | Purpose |
|
|
143
|
+
|---|---|---|
|
|
144
|
+
| Researcher | ddg-search, Context7 | Web search + documentation queries |
|
|
145
|
+
| E2E Tester | Playwright | Browser automation |
|
|
146
|
+
| Reviewer | GitHub | PR and issue management |
|
|
147
|
+
| Deployer | GitHub | Releases, Actions |
|
|
69
148
|
```
|
|
70
149
|
|
|
71
|
-
|
|
150
|
+
**Main Instructions:** `AGENTS.md` - Central guidance for using all features.
|
|
72
151
|
|
|
73
|
-
|
|
152
|
+
---
|
|
74
153
|
|
|
75
|
-
|
|
154
|
+
## 🎨 Featured Skills
|
|
76
155
|
|
|
77
|
-
|
|
156
|
+
### Workflow Automation
|
|
157
|
+
- 🏗️ `architecture-blueprint-generator` - Project analysis & documentation
|
|
158
|
+
- 📋 `create-implementation-plan` - Structured task planning
|
|
159
|
+
- ✍️ `create-readme` - Automated README generation
|
|
160
|
+
- 🎯 `context-map` - File relevance mapping
|
|
78
161
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
162
|
+
### Development Tools
|
|
163
|
+
- 🎭 `playwright-explore-website` / `playwright-generate-test` - Browser automation
|
|
164
|
+
- 🐙 `github-issues` / `gh-cli` - GitHub integration
|
|
165
|
+
- 🧪 `polygot-test-agent` - Multi-language test generation
|
|
166
|
+
- 📚 `microsoft-docs` - Microsoft documentation queries
|
|
84
167
|
|
|
85
|
-
|
|
168
|
+
### Token & Efficiency Tools
|
|
169
|
+
- 🗣️ `caveman` - Ultra-compressed communication modes
|
|
170
|
+
- 📉 `caveman-compress` / `compress` - Memory file compression
|
|
171
|
+
- 📝 `caveman-commit` - Optimized commit messages
|
|
172
|
+
- 👥 `cavecrew` - Multi-agent coordination
|
|
173
|
+
- 📊 `caveman-stats` - Token usage tracking
|
|
86
174
|
|
|
87
|
-
|
|
175
|
+
### Quality & Safety
|
|
176
|
+
- 🛡️ `agent-governance` - AI safety controls
|
|
177
|
+
- 🔒 `security-owasp` - OWASP security guidelines
|
|
178
|
+
- 🤝 `conventional-commit` / `git-commit` - Git best practices
|
|
88
179
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## 📦 Versioning
|
|
183
|
+
|
|
184
|
+
Husky automatically bumps versions on every commit:
|
|
185
|
+
|
|
186
|
+
- **Minor** version increments by default: `1.2.0 → 1.3.0`
|
|
187
|
+
- **Patch** resets to 0 on each bump
|
|
188
|
+
- **Major** changes reset to `<major>.0.0`
|
|
189
|
+
|
|
190
|
+
No manual version management required!
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## 🚀 Publish Flow
|
|
195
|
+
|
|
196
|
+
GitHub Actions automatically publishes to npm when merging to `main`.
|
|
197
|
+
|
|
198
|
+
### 🔑 Required Setup
|
|
92
199
|
|
|
93
|
-
|
|
200
|
+
Add `NPM_TOKEN` to GitHub repository secrets:
|
|
201
|
+
|
|
202
|
+
1. Repository → Settings → Secrets and variables → Actions
|
|
203
|
+
2. New repository secret → Name: `NPM_TOKEN`
|
|
204
|
+
3. Paste npm automation token
|
|
205
|
+
|
|
206
|
+
**Note:** Publish workflow files (`.github/workflows/`) are excluded from consumer sync to prevent conflicts.
|
|
207
|
+
|
|
208
|
+
---
|
|
209
|
+
|
|
210
|
+
## 💻 Local Development
|
|
94
211
|
|
|
95
212
|
```bash
|
|
213
|
+
# Install dependencies & activate Husky hooks
|
|
214
|
+
npm install
|
|
215
|
+
|
|
216
|
+
# Verify sync behavior (dry run)
|
|
96
217
|
npm run sync -- --dry-run
|
|
218
|
+
|
|
219
|
+
# Test package creation
|
|
97
220
|
npm pack --json
|
|
221
|
+
|
|
222
|
+
# Run Playwright tests
|
|
223
|
+
npm test
|
|
98
224
|
```
|
|
99
225
|
|
|
100
|
-
|
|
226
|
+
---
|
|
227
|
+
|
|
228
|
+
## 🔄 Updating the Shared Template
|
|
229
|
+
|
|
230
|
+
1. ✏️ Edit files in `.agents/`, `docs/`, or `scripts/`
|
|
231
|
+
2. 🎯 Test changes locally
|
|
232
|
+
3. 💾 Commit (triggers auto-version bump)
|
|
233
|
+
4. 🚀 Merge to `main` (triggers npm publish)
|
|
234
|
+
5. ♻️ Consumers run `npm install` to get updates
|
|
235
|
+
|
|
236
|
+
---
|
|
237
|
+
|
|
238
|
+
## 🔔 Important Notes
|
|
101
239
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
240
|
+
- ⚙️ Uses `INIT_CWD` to install against consuming project (not package dir)
|
|
241
|
+
- 💾 Local changes are always preserved unless `--force` is used
|
|
242
|
+
- 📖 `AGENTS.md` is the main instruction file agents should read
|
|
243
|
+
- 🎯 Package assumes public npm registry
|
|
244
|
+
- 🎭 Playwright MCP integration documented in `docs/` folder
|
|
106
245
|
|
|
107
|
-
|
|
246
|
+
---
|
|
108
247
|
|
|
109
|
-
|
|
110
|
-
- Local changes in a consuming repo are preserved unless you explicitly use `--force`
|
|
111
|
-
- The publish workflow assumes the package is public on npm
|
|
248
|
+
**Happy coding with AI-powered workflows!** 🤖✨
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://opencode.ai/config.json",
|
|
3
|
+
"mcp": {
|
|
4
|
+
"ddg-search": {
|
|
5
|
+
"type": "local",
|
|
6
|
+
"command": ["npx", "-y", "ddg-mcp-search"],
|
|
7
|
+
"enabled": true
|
|
8
|
+
},
|
|
9
|
+
"github": {
|
|
10
|
+
"type": "local",
|
|
11
|
+
"command": "npx",
|
|
12
|
+
"args": ["-y", "@modelcontextprotocol/server-github"],
|
|
13
|
+
"env": {
|
|
14
|
+
"GITHUB_PERSONAL_ACCESS_TOKEN": "$GITHUB_PERSONAL_ACCESS_TOKEN"
|
|
15
|
+
},
|
|
16
|
+
"enabled": true
|
|
17
|
+
},
|
|
18
|
+
"context7": {
|
|
19
|
+
"type": "remote",
|
|
20
|
+
"url": "https://mcp.context7.com/mcp",
|
|
21
|
+
"headers": {
|
|
22
|
+
"CONTEXT7_API_KEY": "YOUR_API_KEY"
|
|
23
|
+
},
|
|
24
|
+
"enabled": true
|
|
25
|
+
},
|
|
26
|
+
"playwright": {
|
|
27
|
+
"type": "local",
|
|
28
|
+
"command": "node",
|
|
29
|
+
"args": ["scripts/mcp/playwright-mcp-launcher.js"],
|
|
30
|
+
"env": {
|
|
31
|
+
"HEADLESS": "$HEADLESS",
|
|
32
|
+
"SLOW_MO": "$SLOW_MO",
|
|
33
|
+
"VIEWPORT": "$VIEWPORT"
|
|
34
|
+
},
|
|
35
|
+
"enabled": true
|
|
36
|
+
},
|
|
37
|
+
"example-server": {
|
|
38
|
+
"type": "local",
|
|
39
|
+
"command": ["npx", "-y", "your-mcp-package"],
|
|
40
|
+
"enabled": false
|
|
41
|
+
},
|
|
42
|
+
"example-remote": {
|
|
43
|
+
"type": "remote",
|
|
44
|
+
"url": "https://your-mcp-server.com/mcp",
|
|
45
|
+
"enabled": false
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
"permission": {
|
|
49
|
+
"ddg-search_*": "allow",
|
|
50
|
+
"github_*": "allow",
|
|
51
|
+
"mcp-everything_*": "allow",
|
|
52
|
+
"playwright_*": "allow"
|
|
53
|
+
}
|
|
54
|
+
}
|
package/package.json
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abarcenas/ai-workflow-template",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.13.0",
|
|
4
4
|
"description": "A comprehensive template repository for AI-assisted development workflows using GitHub Copilot. This template provides a structured approach to leveraging AI assistance through pre-configured skills, prompts, agents, and coding standards.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
7
|
-
"test": "
|
|
7
|
+
"test": "playwright test",
|
|
8
|
+
"test:headed": "playwright test --headed",
|
|
9
|
+
"test:ui": "playwright test --ui",
|
|
10
|
+
"test:debug": "playwright test --debug",
|
|
11
|
+
"test:report": "playwright show-report",
|
|
8
12
|
"prepare": "husky",
|
|
9
13
|
"sync": "node ./scripts/sync.js",
|
|
10
14
|
"postinstall": "node ./scripts/sync.js"
|
|
@@ -22,11 +26,15 @@
|
|
|
22
26
|
},
|
|
23
27
|
"homepage": "https://github.com/abarcenas29/ai-workflow-template#readme",
|
|
24
28
|
"files": [
|
|
25
|
-
".
|
|
26
|
-
"
|
|
29
|
+
".agents/",
|
|
30
|
+
".github/workflows/",
|
|
31
|
+
"scripts/",
|
|
32
|
+
"AGENTS.md",
|
|
33
|
+
"opencode.mcp.example.json"
|
|
27
34
|
],
|
|
28
|
-
"dependencies": {},
|
|
29
35
|
"devDependencies": {
|
|
36
|
+
"@playwright/test": "^1.59.1",
|
|
37
|
+
"dotenv": "^17.4.2",
|
|
30
38
|
"husky": "^9.0.0"
|
|
31
39
|
}
|
|
32
40
|
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Playwright MCP Launcher
|
|
5
|
+
* This script launches the Playwright MCP server with the correct configuration
|
|
6
|
+
* based on environment variables and project settings.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
const { spawn } = require('child_process');
|
|
10
|
+
const path = require('path');
|
|
11
|
+
|
|
12
|
+
// Get environment variables
|
|
13
|
+
const headless = process.env.HEADLESS === 'true';
|
|
14
|
+
const slowMo = process.env.SLOW_MO ? parseInt(process.env.SLOW_MO) : 0;
|
|
15
|
+
|
|
16
|
+
// Build command arguments
|
|
17
|
+
const args = ['@playwright/mcp@latest'];
|
|
18
|
+
|
|
19
|
+
// Add headless flag if needed
|
|
20
|
+
if (headless) {
|
|
21
|
+
args.push('--headless');
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// Add viewport size if specified
|
|
25
|
+
if (process.env.VIEWPORT) {
|
|
26
|
+
args.push('--viewport', process.env.VIEWPORT);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// Launch the MCP server
|
|
30
|
+
const child = spawn('npx', args, {
|
|
31
|
+
stdio: 'inherit',
|
|
32
|
+
shell: true
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
// Handle process signals
|
|
36
|
+
process.on('SIGINT', () => {
|
|
37
|
+
child.kill('SIGINT');
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
process.on('SIGTERM', () => {
|
|
41
|
+
child.kill('SIGTERM');
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
child.on('exit', (code) => {
|
|
45
|
+
process.exit(code || 0);
|
|
46
|
+
});
|