owflow 0.1.0 → 0.1.2
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/README.md +8 -1
- package/dist/agents/bottleneck-analyzer.md +329 -0
- package/dist/agents/code-quality-pragmatist.md +354 -0
- package/dist/agents/code-reviewer.md +239 -0
- package/dist/agents/codebase-analysis-reporter.md +246 -0
- package/dist/agents/docs-operator.md +23 -0
- package/dist/agents/e2e-test-verifier.md +448 -0
- package/dist/agents/gap-analyzer.md +502 -0
- package/dist/agents/implementation-completeness-checker.md +220 -0
- package/dist/agents/implementation-planner.md +309 -0
- package/dist/agents/information-gatherer.md +691 -0
- package/dist/agents/production-readiness-checker.md +279 -0
- package/dist/agents/project-analyzer.md +404 -0
- package/dist/agents/reality-assessor.md +366 -0
- package/dist/agents/research-planner.md +447 -0
- package/dist/agents/research-synthesizer.md +401 -0
- package/dist/agents/solution-brainstormer.md +257 -0
- package/dist/agents/solution-designer.md +372 -0
- package/dist/agents/spec-auditor.md +298 -0
- package/dist/agents/specification-creator.md +334 -0
- package/dist/agents/task-classifier.md +462 -0
- package/dist/agents/task-group-implementer.md +284 -0
- package/dist/agents/test-suite-runner.md +195 -0
- package/dist/agents/ui-mockup-generator.md +369 -0
- package/dist/agents/user-docs-generator.md +509 -0
- package/dist/commands/development.md +37 -0
- package/dist/commands/flow-init.md +37 -0
- package/dist/commands/migration.md +37 -0
- package/dist/commands/performance.md +37 -0
- package/dist/commands/product-design.md +37 -0
- package/dist/commands/quick-bugfix.md +37 -0
- package/dist/commands/quick-dev.md +140 -0
- package/dist/commands/quick-plan.md +132 -0
- package/dist/commands/research.md +37 -0
- package/dist/commands/reviews-code.md +90 -0
- package/dist/commands/reviews-pragmatic.md +99 -0
- package/dist/commands/reviews-production-readiness.md +113 -0
- package/dist/commands/reviews-reality-check.md +110 -0
- package/dist/commands/reviews-spec-audit.md +114 -0
- package/dist/commands/standards-discover.md +37 -0
- package/dist/commands/standards-update.md +37 -0
- package/dist/commands/work.md +284 -0
- package/dist/skills/codebase-analyzer/SKILL.md +162 -0
- package/dist/skills/codebase-analyzer/references/code-analysis.md +63 -0
- package/dist/skills/codebase-analyzer/references/combined.md +31 -0
- package/dist/skills/codebase-analyzer/references/context-discovery.md +63 -0
- package/dist/skills/codebase-analyzer/references/file-discovery.md +51 -0
- package/dist/skills/codebase-analyzer/references/migration-target.md +23 -0
- package/dist/skills/codebase-analyzer/references/pattern-mining.md +22 -0
- package/dist/skills/development/SKILL.md +669 -0
- package/dist/skills/docs-manager/SKILL.md +379 -0
- package/dist/skills/docs-manager/docs/INDEX.md +199 -0
- package/dist/skills/docs-manager/docs/standards/backend/api.md +25 -0
- package/dist/skills/docs-manager/docs/standards/backend/migrations.md +22 -0
- package/dist/skills/docs-manager/docs/standards/backend/models.md +25 -0
- package/dist/skills/docs-manager/docs/standards/backend/queries.md +22 -0
- package/dist/skills/docs-manager/docs/standards/frontend/accessibility.md +25 -0
- package/dist/skills/docs-manager/docs/standards/frontend/components.md +28 -0
- package/dist/skills/docs-manager/docs/standards/frontend/css.md +16 -0
- package/dist/skills/docs-manager/docs/standards/frontend/responsive.md +28 -0
- package/dist/skills/docs-manager/docs/standards/global/coding-style.md +25 -0
- package/dist/skills/docs-manager/docs/standards/global/commenting.md +10 -0
- package/dist/skills/docs-manager/docs/standards/global/conventions.md +31 -0
- package/dist/skills/docs-manager/docs/standards/global/error-handling.md +22 -0
- package/dist/skills/docs-manager/docs/standards/global/minimal-implementation.md +22 -0
- package/dist/skills/docs-manager/docs/standards/global/validation.md +28 -0
- package/dist/skills/docs-manager/docs/standards/testing/test-writing.md +25 -0
- package/dist/skills/docs-manager/references/claude-md-template.md +29 -0
- package/dist/skills/docs-manager/references/index-md-template.md +73 -0
- package/dist/skills/flow-init/SKILL.md +198 -0
- package/dist/skills/flow-init/references/architecture-template.md +45 -0
- package/dist/skills/flow-init/references/roadmap-templates.md +93 -0
- package/dist/skills/flow-init/references/tech-stack-template.md +70 -0
- package/dist/skills/flow-init/references/vision-templates.md +75 -0
- package/dist/skills/implementation-plan-executor/SKILL.md +378 -0
- package/dist/skills/implementation-verifier/SKILL.md +307 -0
- package/dist/skills/migration/SKILL.md +380 -0
- package/dist/skills/migration/references/migration-strategies.md +397 -0
- package/dist/skills/migration/references/migration-types.md +437 -0
- package/dist/skills/orchestrator-framework/SKILL.md +65 -0
- package/dist/skills/orchestrator-framework/references/orchestrator-creation-checklist.md +47 -0
- package/dist/skills/orchestrator-framework/references/orchestrator-patterns.md +329 -0
- package/dist/skills/performance/SKILL.md +418 -0
- package/dist/skills/performance/references/performance-optimization-guide.md +365 -0
- package/dist/skills/product-design/SKILL.md +843 -0
- package/dist/skills/product-design/references/characteristic-detection.md +92 -0
- package/dist/skills/product-design/references/interaction-patterns.md +206 -0
- package/dist/skills/product-design/references/visual-companion.md +190 -0
- package/dist/skills/product-design/server/index.ts +359 -0
- package/dist/skills/product-design/server/template.html +256 -0
- package/dist/skills/quick-bugfix/SKILL.md +241 -0
- package/dist/skills/research/SKILL.md +493 -0
- package/dist/skills/research/references/brainstorming-techniques.md +84 -0
- package/dist/skills/research/references/design-techniques.md +40 -0
- package/dist/skills/research/references/research-methodologies.md +710 -0
- package/dist/skills/standards-discover/SKILL.md +236 -0
- package/dist/skills/standards-discover/references/aggregation-strategy.md +76 -0
- package/dist/skills/standards-discover/references/code-pattern-prompt.md +68 -0
- package/dist/skills/standards-discover/references/config-analyzer-prompt.md +67 -0
- package/dist/skills/standards-discover/references/docs-extractor-prompt.md +65 -0
- package/dist/skills/standards-discover/references/external-analyzer-prompt.md +75 -0
- package/dist/skills/standards-update/SKILL.md +159 -0
- package/package.json +14 -6
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: standards-update
|
|
3
|
+
description: Update or create project standards from conversation context or explicit description
|
|
4
|
+
argument-hint: "[description of standard/convention] [--from=PATH]"
|
|
5
|
+
user-invocable: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Update Project Standards
|
|
9
|
+
|
|
10
|
+
Update or create standards in `.owflow/docs/standards/` based on conversation context or a provided description. Automatically detects the best-matching category and file. Supports both baseline categories (global, frontend, backend, testing) and custom user-defined categories.
|
|
11
|
+
|
|
12
|
+
## Usage
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
/standards-update # Detect from conversation
|
|
16
|
+
/standards-update "always use React.memo for lists" # From description
|
|
17
|
+
/standards-update --from=/path/to/other-project # Sync from another project
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Mode: Sync from External Project (`--from=PATH`)
|
|
23
|
+
|
|
24
|
+
When `--from=PATH` is provided, the skill switches to **sync mode** — importing standards from another project's `.owflow/docs/standards/` into the current project. This bypasses Phases 1-3 and uses a dedicated flow.
|
|
25
|
+
|
|
26
|
+
### SYNC STEP 1: Validate Source
|
|
27
|
+
|
|
28
|
+
1. Resolve the path (absolute or relative to cwd)
|
|
29
|
+
2. Check `PATH/.owflow/docs/standards/` exists. If not, inform the user and stop.
|
|
30
|
+
3. Check `.owflow/docs/standards/` exists in the current project. If not, offer to run `/flow-init` first.
|
|
31
|
+
|
|
32
|
+
### SYNC STEP 2: Analyze Differences
|
|
33
|
+
|
|
34
|
+
1. Scan source project's `standards/*/` — list all categories and files
|
|
35
|
+
2. Scan current project's `standards/*/` — list all categories and files
|
|
36
|
+
3. For each source file, compare against the local counterpart:
|
|
37
|
+
- **Missing locally**: Category or file doesn't exist in the current project
|
|
38
|
+
- **Differs**: Both exist but content differs (read and compare)
|
|
39
|
+
- **Identical**: No action needed
|
|
40
|
+
4. Present a summary to the user via question (multi-select):
|
|
41
|
+
- Group by status: "New standards to add" and "Standards that differ"
|
|
42
|
+
- Each item shows: `[category]/[file]` with brief description of what it contains
|
|
43
|
+
- Options: individual files to sync, plus "Select all new" / "Select all different" convenience options
|
|
44
|
+
- User selects which standards to import
|
|
45
|
+
|
|
46
|
+
### SYNC STEP 3: Apply Selected Standards
|
|
47
|
+
|
|
48
|
+
For each selected standard:
|
|
49
|
+
|
|
50
|
+
- **Missing locally**: Copy the file from source. Create category directory if needed.
|
|
51
|
+
- **Differs**: Show a brief diff summary and use question per file:
|
|
52
|
+
- "Replace with source version" — overwrite local file
|
|
53
|
+
- "Merge (append new sections)" — read both files, append `###` sections from source that don't exist locally
|
|
54
|
+
- "Skip" — leave local file unchanged
|
|
55
|
+
|
|
56
|
+
### SYNC STEP 4: Update INDEX.md
|
|
57
|
+
|
|
58
|
+
Invoke `docs-operator` subagent via Task tool (subagent_type: `docs-operator`):
|
|
59
|
+
|
|
60
|
+
> "Regenerate INDEX.md to include all newly added/updated standards. Verify AGENTS.md integration."
|
|
61
|
+
|
|
62
|
+
Wait for docs-operator to complete, then immediately proceed to SYNC STEP 5.
|
|
63
|
+
|
|
64
|
+
### SYNC STEP 5: Summarize
|
|
65
|
+
|
|
66
|
+
Display: standards added, standards updated, standards skipped, and total count. Suggest reviewing the imported standards and committing.
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## Mode: Conversation / Description (default)
|
|
71
|
+
|
|
72
|
+
When `--from` is NOT provided, the skill uses the standard detect-and-update flow below.
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## PHASE 1: Detect Standard
|
|
77
|
+
|
|
78
|
+
**Step 1: Gather input**
|
|
79
|
+
|
|
80
|
+
- **If argument provided**: Use the description as primary input. Also scan last 15-20 messages for additional context, examples, or related conventions.
|
|
81
|
+
- **If no argument**: Scan last 15-20 messages for convention discussions. Look for patterns like "we should always...", "our convention is...", "prefer X over Y", "never use...", code examples showing patterns.
|
|
82
|
+
|
|
83
|
+
**Step 2: Discover existing categories and files**
|
|
84
|
+
|
|
85
|
+
Scan `.owflow/docs/standards/*/` to find all existing categories and standard files. This determines what's available — not limited to baseline categories.
|
|
86
|
+
|
|
87
|
+
**Step 3: Match to category and file**
|
|
88
|
+
|
|
89
|
+
Based on the topic detected, suggest the best-matching existing category and file. Consider:
|
|
90
|
+
|
|
91
|
+
- File names and their content (read existing files if topic is close)
|
|
92
|
+
- Whether the convention fits an existing file or needs a new one
|
|
93
|
+
|
|
94
|
+
**Step 4: Present suggestion**
|
|
95
|
+
|
|
96
|
+
- **If confident match** → question: "This convention about [topic] fits [category/file]. Update it?" (Yes / Choose different / Cancel)
|
|
97
|
+
- **If ambiguous** → question listing possible categories/files + "Create new category" + "Create new file in [category]"
|
|
98
|
+
- **If nothing detected** (no argument, no conversation context) → ask user to describe the convention they want to document
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## PHASE 2: Determine Action
|
|
103
|
+
|
|
104
|
+
Check if the target file exists:
|
|
105
|
+
|
|
106
|
+
- **Exists** → update mode
|
|
107
|
+
- **Doesn't exist** → create mode (if new category, create the directory too)
|
|
108
|
+
|
|
109
|
+
No user prompt needed — just inform: "Updating existing standard: [name]" or "Creating new standard: [category/name]"
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## PHASE 3: Gather Standard Content
|
|
114
|
+
|
|
115
|
+
### If updating
|
|
116
|
+
|
|
117
|
+
1. Read current content
|
|
118
|
+
2. Show summary of existing practices
|
|
119
|
+
3. Ask what to add/change
|
|
120
|
+
4. Extract: new practices, modifications, removals, code examples
|
|
121
|
+
|
|
122
|
+
### If creating
|
|
123
|
+
|
|
124
|
+
1. Inform user of target path
|
|
125
|
+
2. Ask for practices, conventions, code examples, do's/don'ts
|
|
126
|
+
3. Optionally show plugin baseline if similar standard exists in docs-manager's bundled docs
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
## PHASE 4: Apply via docs-manager
|
|
131
|
+
|
|
132
|
+
> Each standard uses a `###` heading with 1-10 lines description (excluding code snippets). Multiple standards per topic file. Split large topics into sub-topic files.
|
|
133
|
+
|
|
134
|
+
**Invoke `docs-operator` subagent** via Task tool (subagent_type: `docs-operator`) with context:
|
|
135
|
+
|
|
136
|
+
For **updates**:
|
|
137
|
+
|
|
138
|
+
> "Update documentation file: standards/[category]/[name].md. Current content: [content]. Add/change: [new conventions]. Integrate new practices, maintain markdown formatting, organize logically, preserve existing unless conflicts. Update INDEX.md entry with practice-specific description (enumerate actual practices, not generic category)."
|
|
139
|
+
|
|
140
|
+
For **creates**:
|
|
141
|
+
|
|
142
|
+
> "Create documentation file: standards/[category]/[name].md. Category: [category]. Content: [conventions]. Create with proper markdown, organized sections, code examples. Add to INDEX.md with practice-specific description. Verify AGENTS.md integration."
|
|
143
|
+
|
|
144
|
+
Wait for docs-operator to complete, then immediately proceed to Phase 5.
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
## PHASE 5: Validate & Summarize
|
|
149
|
+
|
|
150
|
+
1. Verify standard file exists and has content
|
|
151
|
+
2. Verify INDEX.md references the standard with practice-specific description (not generic)
|
|
152
|
+
3. Verify AGENTS.md integration
|
|
153
|
+
4. Display summary: what was updated/created, practices added, next steps (review, commit, share with team)
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## Prerequisites
|
|
158
|
+
|
|
159
|
+
If `.owflow/docs/` doesn't exist, offer to run `/flow-init` first.
|
package/package.json
CHANGED
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "owflow",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Spec-driven development AI workflow for OpenCode",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "index.ts",
|
|
7
|
-
"main": "
|
|
7
|
+
"main": "dist/index.js",
|
|
8
|
+
"types": "dist/index.d.ts",
|
|
8
9
|
"files": [
|
|
9
10
|
"dist",
|
|
10
11
|
"README.md",
|
|
11
12
|
"LICENSE"
|
|
12
13
|
],
|
|
13
14
|
"scripts": {
|
|
14
|
-
"build": "rm -rf dist && tsc"
|
|
15
|
+
"build": "rm -rf dist && tsc && npm run copy-markdowns",
|
|
16
|
+
"copy-markdowns": "node ./scripts/copy-markdowns.js",
|
|
17
|
+
"prepack": "npm run build"
|
|
15
18
|
},
|
|
16
19
|
"keywords": [
|
|
17
20
|
"opencode",
|
|
@@ -20,12 +23,17 @@
|
|
|
20
23
|
"spec-driven",
|
|
21
24
|
"development"
|
|
22
25
|
],
|
|
23
|
-
"author":
|
|
26
|
+
"author": {
|
|
27
|
+
"name": "Dawid Paluchowski",
|
|
28
|
+
"email": "palucdev@gmail.com"
|
|
29
|
+
},
|
|
24
30
|
"license": "MIT",
|
|
31
|
+
"dependencies": {
|
|
32
|
+
"gray-matter": "^4.0.3"
|
|
33
|
+
},
|
|
25
34
|
"devDependencies": {
|
|
26
35
|
"@opencode-ai/plugin": "^1.14.44",
|
|
27
|
-
"@types/bun": "^1.3.13"
|
|
28
|
-
"gray-matter": "^4.0.3"
|
|
36
|
+
"@types/bun": "^1.3.13"
|
|
29
37
|
},
|
|
30
38
|
"peerDependencies": {
|
|
31
39
|
"typescript": "^5"
|