@juicesharp/rpiv-pi 0.8.2 → 0.9.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.
@@ -50,4 +50,9 @@ export const SIBLINGS: readonly SiblingPlugin[] = [
50
50
  matches: /rpiv-web-tools/i,
51
51
  provides: "web_search + web_fetch tools + /web-search-config",
52
52
  },
53
+ {
54
+ pkg: "npm:@juicesharp/rpiv-args",
55
+ matches: /rpiv-args(?![-\w])/i,
56
+ provides: "skill-argument resolver — substitutes $N/$ARGUMENTS in skill bodies",
57
+ },
53
58
  ];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@juicesharp/rpiv-pi",
3
- "version": "0.8.2",
3
+ "version": "0.9.0",
4
4
  "description": "Skill-based development workflow for Pi Agent — discover, research, design, plan, implement, validate",
5
5
  "keywords": [
6
6
  "pi-package",
@@ -47,6 +47,7 @@
47
47
  "@juicesharp/rpiv-todo": "*",
48
48
  "@juicesharp/rpiv-advisor": "*",
49
49
  "@juicesharp/rpiv-btw": "*",
50
- "@juicesharp/rpiv-web-tools": "*"
50
+ "@juicesharp/rpiv-web-tools": "*",
51
+ "@juicesharp/rpiv-args": "*"
51
52
  }
52
53
  }
@@ -30,7 +30,7 @@ Use the current working directory as the target project by default. If the user
30
30
 
31
31
  **Agent B — Architecture and conventions:**
32
32
  - subagent_type: `codebase-locator`
33
- - Prompt: "Identify the architectural layers, folder roles, and framework conventions in [target directory]. Determine: What architecture pattern is used (clean architecture, MVC, monorepo, microservices, hexagonal, etc.)? What are the main layers/modules? What frameworks and languages are present? What build system is used? For each main layer/module, check if it contains internal sub-layers with distinct architectural roles. If it does, explicitly flag each sub-layer as a guidance target candidate with: (a) path, (b) role/responsibility, (c) approximate file count, (d) how its patterns differ from siblings. Frontend frameworks (Angular, React, Vue, etc.) almost always have distinct sub-layers components, services, shared/base classes, state management — report each separately."
33
+ - Prompt: "Identify the architectural layout of [target directory] from path shape and manifest files NO content analysis. Detect: (1) Architecture pattern inferred from folder shape — clean-arch via Domain/Application/Infrastructure dirs; MVC via Controllers/Models/Views; monorepo via packages/* + workspaces; microservices via services/* with individual manifests; hexagonal via ports/adapters. (2) Main layers/modules top-level source directories + their names. (3) Frameworks and languages from manifest files (package.json dependencies, *.csproj TargetFramework, pyproject.toml, go.mod, Cargo.toml) and file extensions. (4) Build system from build-config filenames (vite/webpack/tsup/esbuild configs, Makefile, nx.json, turbo.json, dotnet .sln). For each main layer/module, check sub-directory composition. If sub-directories with distinct names/roles exist, flag each as a guidance target candidate with: (a) path, (b) role inferred from folder name (controllers/, services/, entities/, components/, stores/, etc.), (c) file count via ls, (d) how its sub-directory composition differs from sibling layers. Use grep/find/ls only. Do not read file contents. Pass 2 runs codebase-analyzer + codebase-pattern-finder per target folder for deep analysis."
34
34
 
35
35
  - While agents run, read .gitignore yourself to understand exclusion rules
36
36
 
@@ -30,7 +30,7 @@ Use the current working directory as the target project by default. If the user
30
30
 
31
31
  **Agent B — Architecture and conventions:**
32
32
  - subagent_type: `codebase-locator`
33
- - Prompt: "Identify the architectural layers, folder roles, and framework conventions in [target directory]. Determine: What architecture pattern is used (clean architecture, MVC, monorepo, microservices, hexagonal, etc.)? What are the main layers/modules? What frameworks and languages are present? What build system is used? For each main layer/module, check if it contains internal sub-layers with distinct architectural roles. If it does, explicitly flag each sub-layer as a CLAUDE.md target candidate with: (a) path, (b) role/responsibility, (c) approximate file count, (d) how its patterns differ from siblings. Frontend frameworks (Angular, React, Vue, etc.) almost always have distinct sub-layers components, services, shared/base classes, state management — report each separately."
33
+ - Prompt: "Identify the architectural layout of [target directory] from path shape and manifest files NO content analysis. Detect: (1) Architecture pattern inferred from folder shape — clean-arch via Domain/Application/Infrastructure dirs; MVC via Controllers/Models/Views; monorepo via packages/* + workspaces; microservices via services/* with individual manifests; hexagonal via ports/adapters. (2) Main layers/modules top-level source directories + their names. (3) Frameworks and languages from manifest files (package.json dependencies, *.csproj TargetFramework, pyproject.toml, go.mod, Cargo.toml) and file extensions. (4) Build system from build-config filenames (vite/webpack/tsup/esbuild configs, Makefile, nx.json, turbo.json, dotnet .sln). For each main layer/module, check sub-directory composition. If sub-directories with distinct names/roles exist, flag each as a CLAUDE.md target candidate with: (a) path, (b) role inferred from folder name (controllers/, services/, entities/, components/, stores/, etc.), (c) file count via ls, (d) how its sub-directory composition differs from sibling layers. Use grep/find/ls only. Do not read file contents. Pass 2 runs codebase-analyzer + codebase-pattern-finder per target folder for deep analysis."
34
34
 
35
35
  - While agents run, read .gitignore yourself to understand exclusion rules
36
36
 
@@ -11,7 +11,7 @@ You are tasked with creating git commits for repository changes.
11
11
 
12
12
  ## Commit hint
13
13
 
14
- If the user has already provided a specific commit hint or message, use it as guidance. Otherwise the user may have provided no hint — their input will appear as a follow-up paragraph after this skill body if they did.
14
+ `$ARGUMENTS` (empty/literal infer from history and `git diff`)
15
15
 
16
16
  ## Context:
17
17
  - **In-session**: If there's conversation history, use it to understand what was built/changed
@@ -57,16 +57,16 @@ This is NOT a discovery sweep. Focus on DEPTH (how things work, what patterns to
57
57
  - Use **codebase-pattern-finder** to find existing implementations to model after — the primary template for code shape
58
58
  - Use **codebase-analyzer** to understand HOW integration points work in detail
59
59
  - Use **integration-scanner** to map the wiring surface — inbound refs, outbound deps, config/DI/event registration
60
- - Use **precedent-locator** to find similar past changes in git history — what commits introduced comparable features, what broke, and what lessons apply to this design
60
+ - Use **precedent-locator** to find similar past changes in git history — what commits introduced comparable features, what broke, and what lessons apply to this design. Only when `git_commit` is available (not `no-commit`); otherwise skip and note "git history unavailable" in Verification Notes.
61
61
 
62
62
  **Novel work** (new libraries, first-time patterns, no existing codebase precedent):
63
63
  - Add **web-search-researcher** for external documentation, API references, and community patterns
64
64
  - Instruct it to return LINKS with findings — include those links in the final design artifact
65
65
 
66
- Agent prompts should focus on:
67
- - "Find the implementation pattern I should model after for [feature type]"
68
- - "How does [integration point] work in detail — show me the wiring"
69
- - "What connects to [component] — inbound refs, outbound deps, config"
66
+ Agent prompts should focus on (labeled by target agent):
67
+ - **codebase-pattern-finder**: "Find the implementation pattern I should model after for [feature type]"
68
+ - **codebase-analyzer**: "How does [integration point] work in detail"
69
+ - **integration-scanner**: "What connects to [component] — inbound refs, outbound deps, config"
70
70
 
71
71
  NOT: "Find all files related to X" — that's discovery's job, upstream of this skill.
72
72
 
@@ -71,7 +71,7 @@ Before Step 1, create a todo list tracking every step below (Step 1 through Step
71
71
  - Do NOT ask a locator to also cover packaging, docs, runtime wiring, and permissions unless they are the same seam
72
72
 
73
73
  Example prompts:
74
- - codebase-locator: "Find ALL files that [implement/call/emit/subscribe to/import] [specific component]. For each file, report the key function signatures, exported types, and import chains. Search exhaustively — grep for method names, class names, event strings."
74
+ - codebase-locator: "Find ALL files that [implement/call/emit/subscribe to/import] [specific component]. For each file, report the key function names, class/type names, and import chains. Search exhaustively — grep for method names, class names, event strings. Report only declaration lines via grep match anchors (e.g., `file.ts:42`); full multi-line signatures and type bodies are captured by the orchestrator in Step 3 when it reads key files for depth."
75
75
  - integration-scanner: "What connects to [area] — inbound refs, outbound deps, config/DI/event wiring. For each connection, report the function/method that creates it."
76
76
  - thoughts-locator: "What existing docs/decisions exist about [topic]"
77
77
 
@@ -12,7 +12,10 @@ You are tasked with implementing an approved technical plan from `thoughts/share
12
12
 
13
13
  ## Getting Started
14
14
 
15
- When given a plan path:
15
+ - Plan path: `$1` (empty/literal → ask user)
16
+ - Phase scope: `${@:2}` (empty → all phases sequentially; else scope to this phase only)
17
+
18
+ With a plan path in hand:
16
19
  - Read the plan completely and check for any existing checkmarks (- [x])
17
20
  - Read the original ticket and all files mentioned in the plan
18
21
  - **Read files fully** - never use limit/offset parameters, you need complete context
@@ -20,8 +23,6 @@ When given a plan path:
20
23
  - Create a todo list to track your progress
21
24
  - Start implementing if you understand what needs to be done
22
25
 
23
- If no plan path provided, ask for one.
24
-
25
26
  ## Implementation Philosophy
26
27
 
27
28
  Plans are carefully designed, but reality can be messy. Your job is to:
@@ -53,7 +53,7 @@ First, detect the project's technology stack by checking for framework indicator
53
53
 
54
54
  Spawn parallel discovery agents using the Agent tool:
55
55
  - Use the **codebase-locator** agent to find all registered routes, navigation menus, and page entry points
56
- - Use the **codebase-locator** agent to find all frontend HTTP API call sites and which backend URLs they hit
56
+ - Use the **codebase-locator** agent to find all frontend HTTP API call sites — report each call-site `file:line` and the literal URL template string found at the call site (e.g., ``${base}/users/${id}``). Frontend-to-backend URL correlation happens orchestrator-side in Step 3's Cross-Reference synthesis (`skills/outline-test-cases/SKILL.md:71-79`) using the backend-controller findings from the next agent.
57
57
  - Use the **codebase-locator** agent to find all backend API controllers and route handlers
58
58
  - Use the **test-case-locator** agent to find existing test cases in `.rpiv/test-cases/` to avoid duplicates
59
59
 
@@ -81,11 +81,11 @@ Question 2: [Full dense question paragraph]
81
81
  For each question, provide your analysis with exact file:line references. Note connections between the questions where the same code serves multiple roles. Focus on DEPTH — trace the actual code, don't just locate it.
82
82
  ```
83
83
 
84
- **Precedent sweep (always spawn):**
85
- Spawn one `precedent-locator` agent alongside the question agents:
86
- "Find similar past changes involving [list key files from Discovery Summary]. Search git log for commits that touched these files, similar commit messages, and follow-up fixes. Research topic: [original query]."
84
+ **Precedent sweep (git-gated):**
87
85
 
88
- This agent runs with full knowledge of discovered files its findings go into Precedents & Lessons, not tied to a specific question.
86
+ When `git_commit` is available (not `no-commit`), spawn one `precedent-locator` agent alongside the question agents with prompt: "Find similar past changes involving [list key files from Discovery Summary]. Search git log for commits that touched these files, similar commit messages, and follow-up fixes. Research topic: [original query]."
87
+
88
+ Findings go into Precedents & Lessons. Otherwise skip and note "git history unavailable" there.
89
89
 
90
90
  **Wait for ALL agents to complete** before proceeding.
91
91
 
@@ -95,7 +95,7 @@ Using the entry points discovered in Step 2 (validated against _meta.md when ava
95
95
 
96
96
  **Agent D — Postcondition Discovery:**
97
97
  - subagent_type: `integration-scanner`
98
- - Prompt: "Find all side effects triggered by {feature name} actions{endpoint_scope}. Look for: domain events published, message handlers invoked, email/notification triggers, external API calls, database cascades, cache invalidations, audit log entries, webhook dispatches. For each side effect, report: what triggers it (which action/endpoint), what it does, and where the handler code lives. These become postconditions in test cases.{scope_context}"
98
+ - Prompt: "Find all side effects triggered by {feature name} actions{endpoint_scope}. Look for: domain events published, message handlers invoked, email/notification triggers, external API calls, database cascades, cache invalidations, audit log entries, webhook dispatches. For each side effect, report: what triggers it (which action/endpoint) and where the handler code lives (file:line). Do NOT describe what the handler does — only locate it. These locations become postconditions in test cases.{scope_context}"
99
99
 
100
100
  Wait for ALL agents to complete before proceeding.
101
101