@aicgen/aicgen 1.0.4 → 1.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/data/architecture/bounded-contexts/context-map.md +50 -0
- package/data/architecture/bounded-contexts/index.md +7 -0
- package/data/architecture/component-based/index.md +7 -0
- package/data/architecture/component-based/structure.md +63 -0
- package/data/architecture/index.md +2 -0
- package/data/guideline-mappings.yml +112 -0
- package/data/language/index.md +3 -0
- package/data/language/kotlin/basics.md +35 -0
- package/data/language/kotlin/coroutines.md +32 -0
- package/data/language/kotlin/idioms.md +48 -0
- package/data/language/kotlin/index.md +9 -0
- package/data/language/php/basics.md +39 -0
- package/data/language/php/index.md +9 -0
- package/data/language/php/modern.md +36 -0
- package/data/language/php/oop.md +45 -0
- package/data/version.json +14 -10
- package/data/workflows/README.md +51 -0
- package/data/workflows/sdlc/build.md +38 -0
- package/data/workflows/sdlc/check.md +46 -0
- package/data/workflows/sdlc/plan.md +54 -0
- package/data/workflows/sdlc/research.md +60 -0
- package/data/workflows/sdlc/ship.md +43 -0
- package/data/workflows/sdlc/spec.md +54 -0
- package/dist/index.js +14770 -13787
- package/package.json +1 -1
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# /check
|
|
2
|
+
|
|
3
|
+
**Purpose:** Verify the current implementation against the active spec — tests, code review, and regression check.
|
|
4
|
+
|
|
5
|
+
## When to use
|
|
6
|
+
|
|
7
|
+
After `/build` phases are complete. Can also be run at any point during development to check progress. Safe to run repeatedly.
|
|
8
|
+
|
|
9
|
+
## Steps
|
|
10
|
+
|
|
11
|
+
1. Read the active spec from `docs/specs/` and plan from `docs/plans/`
|
|
12
|
+
2. Run the full test suite and report results
|
|
13
|
+
3. Review changed files against the spec's acceptance criteria — flag any gaps
|
|
14
|
+
4. Check for regressions — unintended side effects in changed files
|
|
15
|
+
5. Produce a structured report
|
|
16
|
+
6. If all criteria are met and no regressions, prompt the user to run `/ship`
|
|
17
|
+
|
|
18
|
+
## Output
|
|
19
|
+
|
|
20
|
+
Inline structured report:
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
✅ Acceptance criteria met
|
|
24
|
+
- [criterion 1]
|
|
25
|
+
- [criterion 2]
|
|
26
|
+
|
|
27
|
+
❌ Acceptance criteria not met
|
|
28
|
+
- [criterion] — [details of gap]
|
|
29
|
+
|
|
30
|
+
⚠️ Potential regressions
|
|
31
|
+
- [file/behaviour] — [details]
|
|
32
|
+
|
|
33
|
+
📋 Suggested fixes
|
|
34
|
+
- [fix 1]
|
|
35
|
+
- [fix 2]
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Tips
|
|
39
|
+
|
|
40
|
+
- Run `/check` early and often — not just at the end
|
|
41
|
+
- Use it after each `/build` phase to catch issues while context is fresh
|
|
42
|
+
- A clean `/check` report is the gate for running `/ship`
|
|
43
|
+
|
|
44
|
+
## Next step
|
|
45
|
+
|
|
46
|
+
If all criteria are met and no regressions: run [`/ship`](ship.md).
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# /plan
|
|
2
|
+
|
|
3
|
+
**Purpose:** Produce a phased, checkpoint-driven implementation plan based on the spec and research findings.
|
|
4
|
+
|
|
5
|
+
## When to use
|
|
6
|
+
|
|
7
|
+
After `/research`. This step breaks the work into independently verifiable phases that `/build` will execute one at a time.
|
|
8
|
+
|
|
9
|
+
## Pre-condition
|
|
10
|
+
|
|
11
|
+
An active spec with a `## Research Findings` section must exist in `docs/specs/`. If research was skipped, the assistant will warn you and ask for confirmation before proceeding.
|
|
12
|
+
|
|
13
|
+
## Steps
|
|
14
|
+
|
|
15
|
+
1. Read the active spec (including research findings) from `docs/specs/`
|
|
16
|
+
2. Analyse the codebase — existing structure, patterns, conventions
|
|
17
|
+
3. Break implementation into phases, each independently verifiable
|
|
18
|
+
4. For each phase: list files to create or modify, key decisions, and verification steps
|
|
19
|
+
5. Identify risks and propose mitigations
|
|
20
|
+
6. Create `docs/plans/` if it does not exist
|
|
21
|
+
7. Save the plan to `docs/plans/{spec-name}.md`
|
|
22
|
+
8. Confirm saved and prompt the user to run `/build`
|
|
23
|
+
|
|
24
|
+
## Output
|
|
25
|
+
|
|
26
|
+
Creates `docs/plans/{spec-name}.md` with a phase-by-phase breakdown:
|
|
27
|
+
|
|
28
|
+
```markdown
|
|
29
|
+
# Plan: {name}
|
|
30
|
+
|
|
31
|
+
## Overview
|
|
32
|
+
{summary of approach}
|
|
33
|
+
|
|
34
|
+
## Phase 1: {name}
|
|
35
|
+
**Files:** {files to create or modify}
|
|
36
|
+
**Steps:** {implementation steps}
|
|
37
|
+
**Verify:** {how to confirm this phase is complete}
|
|
38
|
+
|
|
39
|
+
## Phase 2: {name}
|
|
40
|
+
...
|
|
41
|
+
|
|
42
|
+
## Risks
|
|
43
|
+
{risks and mitigations}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Tips
|
|
47
|
+
|
|
48
|
+
- Each phase should be completable in one focused work session
|
|
49
|
+
- Verification steps should be concrete — runnable commands or observable outcomes
|
|
50
|
+
- Order phases so each one builds on a stable foundation from the previous
|
|
51
|
+
|
|
52
|
+
## Next step
|
|
53
|
+
|
|
54
|
+
Run [`/build`](build.md) to execute the first phase of the plan.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# /research
|
|
2
|
+
|
|
3
|
+
**Purpose:** Analyze the active spec with internal codebase scanning and external web research, and prompt for infrastructure preference before planning begins.
|
|
4
|
+
|
|
5
|
+
## When to use
|
|
6
|
+
|
|
7
|
+
After `/spec`, before `/plan`. This step surfaces codebase patterns, risks, and reference architectures that should inform the implementation plan.
|
|
8
|
+
|
|
9
|
+
## Pre-condition
|
|
10
|
+
|
|
11
|
+
An active spec must exist in `docs/specs/`. If none is found, the assistant will tell you to run `/spec` first and stop.
|
|
12
|
+
|
|
13
|
+
## Steps
|
|
14
|
+
|
|
15
|
+
1. Read the most recently modified spec from `docs/specs/`
|
|
16
|
+
2. **Internal scan** — search codebase for related code, patterns, dependencies, conflicts
|
|
17
|
+
3. **Infrastructure prompt** — ask the user:
|
|
18
|
+
> "Does this feature require infrastructure decisions?"
|
|
19
|
+
> - Cost-optimised / serverless (pay-per-use: Cloud Run, Cloud Functions, AWS Lambda, Fargate, etc.)
|
|
20
|
+
> - Fixed / dedicated (predictable load: Kubernetes, EC2, GKE, dedicated VMs, etc.)
|
|
21
|
+
> - No infrastructure involved
|
|
22
|
+
4. **Web research** — search for architecture patterns, best practices, reference implementations, and cost comparisons relevant to the spec. Results are biased toward the chosen infrastructure model.
|
|
23
|
+
5. Surface: recommended approaches, trade-offs, cost implications, reference links
|
|
24
|
+
6. Suggest improvements or clarifications to the spec
|
|
25
|
+
7. Append `## Research Findings` to the active spec file
|
|
26
|
+
8. Prompt the user to run `/plan`
|
|
27
|
+
|
|
28
|
+
## Infrastructure preference
|
|
29
|
+
|
|
30
|
+
The infrastructure prompt shapes the direction of web research:
|
|
31
|
+
|
|
32
|
+
| Choice | Research focus |
|
|
33
|
+
|--------|---------------|
|
|
34
|
+
| Serverless | Event-driven patterns, cold start mitigation, pay-per-use cost modelling, Cloud Run / Lambda / Fargate comparisons |
|
|
35
|
+
| Fixed / dedicated | Kubernetes patterns, resource sizing, HA configuration, long-running process management |
|
|
36
|
+
| No infrastructure | Pure code architecture, library selection, algorithm trade-offs |
|
|
37
|
+
|
|
38
|
+
## Output
|
|
39
|
+
|
|
40
|
+
Appends a `## Research Findings` section to the active spec file:
|
|
41
|
+
|
|
42
|
+
```markdown
|
|
43
|
+
## Research Findings
|
|
44
|
+
|
|
45
|
+
### Internal codebase
|
|
46
|
+
{relevant existing code, patterns, conflicts found}
|
|
47
|
+
|
|
48
|
+
### Web research
|
|
49
|
+
{architecture recommendations, reference links, cost comparisons}
|
|
50
|
+
|
|
51
|
+
### Infrastructure recommendation
|
|
52
|
+
{recommendation based on chosen preference}
|
|
53
|
+
|
|
54
|
+
### Suggested spec improvements
|
|
55
|
+
{clarifications or additions to the spec}
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Next step
|
|
59
|
+
|
|
60
|
+
Run [`/plan`](plan.md) to turn the refined spec into a phased implementation plan.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# /ship
|
|
2
|
+
|
|
3
|
+
**Purpose:** Pre-flight wrap-up — verify everything is ready, then draft a PR description referencing the spec and plan.
|
|
4
|
+
|
|
5
|
+
## When to use
|
|
6
|
+
|
|
7
|
+
After `/check` reports all acceptance criteria met and no regressions. This is the final step of the SDLC workflow.
|
|
8
|
+
|
|
9
|
+
## Steps
|
|
10
|
+
|
|
11
|
+
1. Run the full test suite — stops and reports if any tests fail
|
|
12
|
+
2. Read the active spec and plan
|
|
13
|
+
3. Verify `docs/specs/{name}.md` and `docs/plans/{name}.md` are up to date
|
|
14
|
+
4. List all uncommitted changes
|
|
15
|
+
5. Draft a PR description:
|
|
16
|
+
```
|
|
17
|
+
## Summary
|
|
18
|
+
{goal from spec}
|
|
19
|
+
|
|
20
|
+
## Changes
|
|
21
|
+
{summary of completed phases}
|
|
22
|
+
|
|
23
|
+
## Spec
|
|
24
|
+
docs/specs/{name}.md
|
|
25
|
+
|
|
26
|
+
## Plan
|
|
27
|
+
docs/plans/{name}.md
|
|
28
|
+
|
|
29
|
+
## Test plan
|
|
30
|
+
{acceptance criteria as a checklist}
|
|
31
|
+
```
|
|
32
|
+
6. Present the PR description to the user for review
|
|
33
|
+
7. Ask: "Ready to commit and push?" — if yes, stage all changes and create a conventional commit
|
|
34
|
+
|
|
35
|
+
## Output
|
|
36
|
+
|
|
37
|
+
A complete PR description ready to paste or submit. If the user confirms, a commit is created with a conventional commit message.
|
|
38
|
+
|
|
39
|
+
## Tips
|
|
40
|
+
|
|
41
|
+
- Do not run `/ship` if `/check` found unresolved issues
|
|
42
|
+
- The PR description links to `docs/specs/` and `docs/plans/` — reviewers can follow the full decision trail
|
|
43
|
+
- The commit message follows conventional commits format (e.g. `feat: add {feature-name}`)
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# /spec [name]
|
|
2
|
+
|
|
3
|
+
**Purpose:** Capture the full specification for a feature or task before any code is written.
|
|
4
|
+
|
|
5
|
+
## When to use
|
|
6
|
+
|
|
7
|
+
Run this at the very start of any non-trivial feature or task. It ensures the AI assistant and developer share a common understanding of what is being built before any planning or implementation begins.
|
|
8
|
+
|
|
9
|
+
## Arguments
|
|
10
|
+
|
|
11
|
+
| Argument | Required | Description |
|
|
12
|
+
|----------|----------|-------------|
|
|
13
|
+
| `name` | No | Feature name used as the filename. If omitted, the assistant will ask. |
|
|
14
|
+
|
|
15
|
+
## Steps
|
|
16
|
+
|
|
17
|
+
1. Ask for a feature name if not provided
|
|
18
|
+
2. Gather: goal, user stories, acceptance criteria, constraints, and what is explicitly out of scope
|
|
19
|
+
3. Create `docs/specs/` if it does not exist
|
|
20
|
+
4. Save to `docs/specs/{name}.md`
|
|
21
|
+
5. Confirm the file was saved and prompt the user to run `/research`
|
|
22
|
+
|
|
23
|
+
## Output
|
|
24
|
+
|
|
25
|
+
Creates `docs/specs/{name}.md` with this structure:
|
|
26
|
+
|
|
27
|
+
```markdown
|
|
28
|
+
# Spec: {name}
|
|
29
|
+
|
|
30
|
+
## Goal
|
|
31
|
+
{goal}
|
|
32
|
+
|
|
33
|
+
## User Stories
|
|
34
|
+
{user stories}
|
|
35
|
+
|
|
36
|
+
## Acceptance Criteria
|
|
37
|
+
{acceptance criteria}
|
|
38
|
+
|
|
39
|
+
## Constraints
|
|
40
|
+
{constraints}
|
|
41
|
+
|
|
42
|
+
## Out of Scope
|
|
43
|
+
{out of scope}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Tips
|
|
47
|
+
|
|
48
|
+
- Be specific in acceptance criteria — vague criteria lead to vague implementations
|
|
49
|
+
- Out-of-scope is as important as in-scope; it prevents scope creep
|
|
50
|
+
- The more detail here, the better `/research` and `/plan` will be
|
|
51
|
+
|
|
52
|
+
## Next step
|
|
53
|
+
|
|
54
|
+
Run [`/research`](research.md) to analyze the spec against the codebase and find reference solutions.
|