rrce-workflow 0.2.20 → 0.2.22
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 +3 -6
- package/agent-core/prompts/documentation.md +2 -2
- package/agent-core/prompts/executor.md +2 -2
- package/agent-core/prompts/init.md +1 -2
- package/agent-core/prompts/planning_orchestrator.md +2 -2
- package/agent-core/prompts/research_discussion.md +2 -2
- package/agent-core/prompts/sync.md +2 -2
- package/agent-core/templates/documentation_output.md +0 -1
- package/agent-core/templates/executor_output.md +0 -1
- package/agent-core/templates/init_output.md +0 -1
- package/agent-core/templates/planning_output.md +0 -1
- package/agent-core/templates/research_output.md +0 -1
- package/dist/index.js +9 -5
- package/docs/architecture.md +1 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -31,7 +31,7 @@ npx rrce-workflow
|
|
|
31
31
|
```
|
|
32
32
|
|
|
33
33
|
The wizard will:
|
|
34
|
-
1. Ask where to store workflow data (global
|
|
34
|
+
1. Ask where to store workflow data (global or workspace)
|
|
35
35
|
2. Let you choose a custom global path if the default isn't writable
|
|
36
36
|
3. Ask which AI tools you use (GitHub Copilot, Antigravity)
|
|
37
37
|
4. Set up prompts and knowledge folders
|
|
@@ -89,7 +89,7 @@ All agents read `.rrce-workflow/config.yaml` to resolve paths:
|
|
|
89
89
|
|
|
90
90
|
```yaml
|
|
91
91
|
storage:
|
|
92
|
-
mode: workspace # or: global
|
|
92
|
+
mode: workspace # or: global
|
|
93
93
|
globalPath: "~/.rrce-workflow" # optional custom path
|
|
94
94
|
|
|
95
95
|
project:
|
|
@@ -97,13 +97,11 @@ project:
|
|
|
97
97
|
```
|
|
98
98
|
|
|
99
99
|
Agents resolve `{{RRCE_DATA}}` based on storage mode:
|
|
100
|
-
- `workspace` → `.rrce-workflow/`
|
|
101
100
|
- `global` → `~/.rrce-workflow/workspaces/my-project/`
|
|
102
|
-
- `both` → `.rrce-workflow/` (primary, synced to global)
|
|
103
101
|
|
|
104
102
|
### Cross-Project References
|
|
105
103
|
|
|
106
|
-
When using `global`
|
|
104
|
+
When using `global` mode, you can reference other projects:
|
|
107
105
|
|
|
108
106
|
```
|
|
109
107
|
~/.rrce-workflow/workspaces/other-project/knowledge/project-context.md
|
|
@@ -151,7 +149,6 @@ When you run the wizard on an already-configured project, you'll see:
|
|
|
151
149
|
|------|----------|----------|
|
|
152
150
|
| `global` | `~/.rrce-workflow/workspaces/<name>/` | Clean workspace, cross-project references |
|
|
153
151
|
| `workspace` | `.rrce-workflow/` | Team sharing, portable with repo |
|
|
154
|
-
| `both` | Both locations (synced) | Full redundancy + cross-project access |
|
|
155
152
|
|
|
156
153
|
---
|
|
157
154
|
|
|
@@ -24,7 +24,7 @@ You are the Documentation Lead for the project. Operate like a senior engineerin
|
|
|
24
24
|
Before doing ANY work, read `.rrce-workflow/config.yaml` and resolve these variables:
|
|
25
25
|
```
|
|
26
26
|
RRCE_HOME = config.storage.globalPath OR "~/.rrce-workflow"
|
|
27
|
-
RRCE_DATA = (config.storage.mode == "workspace"
|
|
27
|
+
RRCE_DATA = (config.storage.mode == "workspace") ? ".rrce-workflow/" : "${RRCE_HOME}/workspaces/${config.project.name}/"
|
|
28
28
|
```
|
|
29
29
|
Use these resolved paths for ALL subsequent file operations.
|
|
30
30
|
|
|
@@ -60,7 +60,7 @@ Path Resolution
|
|
|
60
60
|
|
|
61
61
|
**How to resolve `{{RRCE_DATA}}`**:
|
|
62
62
|
1. Read `config.yaml` → get `storage.mode` and `project.name`
|
|
63
|
-
2. Resolve: `workspace` → `.rrce-workflow/` | `global` → `{{RRCE_HOME}}/workspaces/<name>/`
|
|
63
|
+
2. Resolve: `workspace` → `.rrce-workflow/` | `global` → `{{RRCE_HOME}}/workspaces/<name>/`
|
|
64
64
|
|
|
65
65
|
**How to resolve `{{RRCE_HOME}}`**: `config.yaml` → `storage.globalPath` or default `~/.rrce-workflow`
|
|
66
66
|
|
|
@@ -20,7 +20,7 @@ You are the Executor for the project. Operate like a senior individual contribut
|
|
|
20
20
|
Before doing ANY work, read `.rrce-workflow/config.yaml` and resolve these variables:
|
|
21
21
|
```
|
|
22
22
|
RRCE_HOME = config.storage.globalPath OR "~/.rrce-workflow"
|
|
23
|
-
RRCE_DATA = (config.storage.mode == "workspace"
|
|
23
|
+
RRCE_DATA = (config.storage.mode == "workspace") ? ".rrce-workflow/" : "${RRCE_HOME}/workspaces/${config.project.name}/"
|
|
24
24
|
```
|
|
25
25
|
Use these resolved paths for ALL subsequent file operations.
|
|
26
26
|
|
|
@@ -64,7 +64,7 @@ Path Resolution
|
|
|
64
64
|
|
|
65
65
|
**How to resolve `{{RRCE_DATA}}`**:
|
|
66
66
|
1. Read `config.yaml` → get `storage.mode` and `project.name`
|
|
67
|
-
2. Resolve: `workspace` → `.rrce-workflow/` | `global` → `{{RRCE_HOME}}/workspaces/<name>/`
|
|
67
|
+
2. Resolve: `workspace` → `.rrce-workflow/` | `global` → `{{RRCE_HOME}}/workspaces/<name>/`
|
|
68
68
|
|
|
69
69
|
**How to resolve `{{RRCE_HOME}}`**: `config.yaml` → `storage.globalPath` or default `~/.rrce-workflow`
|
|
70
70
|
|
|
@@ -19,7 +19,7 @@ You are the Project Initializer for RRCE-Workflow. Operate like a senior archite
|
|
|
19
19
|
Before doing ANY work, read `.rrce-workflow/config.yaml` (if it exists) and resolve these variables:
|
|
20
20
|
```
|
|
21
21
|
RRCE_HOME = config.storage.globalPath OR "~/.rrce-workflow"
|
|
22
|
-
RRCE_DATA = (config.storage.mode == "workspace"
|
|
22
|
+
RRCE_DATA = (config.storage.mode == "workspace") ? ".rrce-workflow/" : "${RRCE_HOME}/workspaces/${config.project.name}/"
|
|
23
23
|
```
|
|
24
24
|
If config doesn't exist yet (new project), use defaults: `RRCE_HOME=~/.rrce-workflow`, `RRCE_DATA=.rrce-workflow/`
|
|
25
25
|
|
|
@@ -50,7 +50,6 @@ Path Resolution
|
|
|
50
50
|
3. Resolve based on mode:
|
|
51
51
|
- `workspace` → `<workspace>/.rrce-workflow/`
|
|
52
52
|
- `global` → `{{RRCE_HOME}}/workspaces/<project.name>/`
|
|
53
|
-
- `both` → `<workspace>/.rrce-workflow/` (primary), synced to global
|
|
54
53
|
|
|
55
54
|
**How to resolve `{{RRCE_HOME}}`** (global home):
|
|
56
55
|
1. Read `.rrce-workflow/config.yaml`
|
|
@@ -17,7 +17,7 @@ You are the Planning & Task Orchestrator for the project. Operate like an engine
|
|
|
17
17
|
Before doing ANY work, read `.rrce-workflow/config.yaml` and resolve these variables:
|
|
18
18
|
```
|
|
19
19
|
RRCE_HOME = config.storage.globalPath OR "~/.rrce-workflow"
|
|
20
|
-
RRCE_DATA = (config.storage.mode == "workspace"
|
|
20
|
+
RRCE_DATA = (config.storage.mode == "workspace") ? ".rrce-workflow/" : "${RRCE_HOME}/workspaces/${config.project.name}/"
|
|
21
21
|
```
|
|
22
22
|
Use these resolved paths for ALL subsequent file operations.
|
|
23
23
|
|
|
@@ -56,7 +56,7 @@ Path Resolution
|
|
|
56
56
|
|
|
57
57
|
**How to resolve `{{RRCE_DATA}}`**:
|
|
58
58
|
1. Read `config.yaml` → get `storage.mode` and `project.name`
|
|
59
|
-
2. Resolve: `workspace` → `.rrce-workflow/` | `global` → `{{RRCE_HOME}}/workspaces/<name>/`
|
|
59
|
+
2. Resolve: `workspace` → `.rrce-workflow/` | `global` → `{{RRCE_HOME}}/workspaces/<name>/`
|
|
60
60
|
|
|
61
61
|
**How to resolve `{{RRCE_HOME}}`**: `config.yaml` → `storage.globalPath` or default `~/.rrce-workflow`
|
|
62
62
|
|
|
@@ -24,7 +24,7 @@ You are the Research & Discussion Lead for the project. Operate like a staff-lev
|
|
|
24
24
|
Before doing ANY work, read `.rrce-workflow/config.yaml` and resolve these variables:
|
|
25
25
|
```
|
|
26
26
|
RRCE_HOME = config.storage.globalPath OR "~/.rrce-workflow"
|
|
27
|
-
RRCE_DATA = (config.storage.mode == "workspace"
|
|
27
|
+
RRCE_DATA = (config.storage.mode == "workspace") ? ".rrce-workflow/" : "${RRCE_HOME}/workspaces/${config.project.name}/"
|
|
28
28
|
```
|
|
29
29
|
Use these resolved paths for ALL subsequent file operations.
|
|
30
30
|
|
|
@@ -50,7 +50,7 @@ Path Resolution
|
|
|
50
50
|
|
|
51
51
|
**How to resolve `{{RRCE_DATA}}`**:
|
|
52
52
|
1. Read `config.yaml` → get `storage.mode` and `project.name`
|
|
53
|
-
2. Resolve: `workspace` → `.rrce-workflow/` | `global` → `{{RRCE_HOME}}/workspaces/<name>/`
|
|
53
|
+
2. Resolve: `workspace` → `.rrce-workflow/` | `global` → `{{RRCE_HOME}}/workspaces/<name>/`
|
|
54
54
|
|
|
55
55
|
**How to resolve `{{RRCE_HOME}}`**: `config.yaml` → `storage.globalPath` or default `~/.rrce-workflow`
|
|
56
56
|
|
|
@@ -18,7 +18,7 @@ You are the Knowledge Sync Lead. Act like a senior architect charged with keepin
|
|
|
18
18
|
Before doing ANY work, read `.rrce-workflow/config.yaml` and resolve these variables:
|
|
19
19
|
```
|
|
20
20
|
RRCE_HOME = config.storage.globalPath OR "~/.rrce-workflow"
|
|
21
|
-
RRCE_DATA = (config.storage.mode == "workspace"
|
|
21
|
+
RRCE_DATA = (config.storage.mode == "workspace") ? ".rrce-workflow/" : "${RRCE_HOME}/workspaces/${config.project.name}/"
|
|
22
22
|
```
|
|
23
23
|
Use these resolved paths for ALL subsequent file operations.
|
|
24
24
|
|
|
@@ -50,7 +50,7 @@ Path Resolution
|
|
|
50
50
|
|
|
51
51
|
**How to resolve `{{RRCE_DATA}}`**:
|
|
52
52
|
1. Read `config.yaml` → get `storage.mode` and `project.name`
|
|
53
|
-
2. Resolve: `workspace` → `.rrce-workflow/` | `global` → `{{RRCE_HOME}}/workspaces/<name>/`
|
|
53
|
+
2. Resolve: `workspace` → `.rrce-workflow/` | `global` → `{{RRCE_HOME}}/workspaces/<name>/`
|
|
54
54
|
|
|
55
55
|
**How to resolve `{{RRCE_HOME}}`**: `config.yaml` → `storage.globalPath` or default `~/.rrce-workflow`
|
|
56
56
|
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
- {{RRCE_DATA}}: Primary storage path (resolves based on storage mode in .rrce-workflow/config.yaml)
|
|
4
4
|
- global: {{RRCE_HOME}}/workspaces/<workspace-name>/
|
|
5
5
|
- workspace: <workspace>/.rrce-workflow/
|
|
6
|
-
- both: <workspace>/.rrce-workflow/ (primary, auto-synced to global)
|
|
7
6
|
- {{RRCE_HOME}}: Global home (default: ~/.rrce-workflow, customizable via storage.globalPath in config)
|
|
8
7
|
- {{WORKSPACE_ROOT}}: Workspace root directory
|
|
9
8
|
- {{WORKSPACE_NAME}}: Workspace name from config or directory name
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
- {{RRCE_DATA}}: Primary storage path (resolves based on storage mode in .rrce-workflow/config.yaml)
|
|
4
4
|
- global: {{RRCE_HOME}}/workspaces/<workspace-name>/
|
|
5
5
|
- workspace: <workspace>/.rrce-workflow/
|
|
6
|
-
- both: <workspace>/.rrce-workflow/ (primary, auto-synced to global)
|
|
7
6
|
- {{RRCE_HOME}}: Global home (default: ~/.rrce-workflow, customizable via storage.globalPath in config)
|
|
8
7
|
- {{WORKSPACE_ROOT}}: Workspace root directory
|
|
9
8
|
- {{WORKSPACE_NAME}}: Workspace name from config or directory name
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
- {{RRCE_DATA}}: Primary storage path (resolves based on storage mode in .rrce-workflow/config.yaml)
|
|
4
4
|
- global: {{RRCE_HOME}}/workspaces/<workspace-name>/
|
|
5
5
|
- workspace: <workspace>/.rrce-workflow/
|
|
6
|
-
- both: <workspace>/.rrce-workflow/ (primary, auto-synced to global)
|
|
7
6
|
- {{RRCE_HOME}}: Global home (default: ~/.rrce-workflow, customizable via storage.globalPath in config)
|
|
8
7
|
- {{WORKSPACE_ROOT}}: Workspace root directory
|
|
9
8
|
- {{WORKSPACE_NAME}}: Workspace name from config or directory name
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
- {{RRCE_DATA}}: Primary storage path (resolves based on storage mode in .rrce-workflow/config.yaml)
|
|
4
4
|
- global: {{RRCE_HOME}}/workspaces/<workspace-name>/
|
|
5
5
|
- workspace: <workspace>/.rrce-workflow/
|
|
6
|
-
- both: <workspace>/.rrce-workflow/ (primary, auto-synced to global)
|
|
7
6
|
- {{RRCE_HOME}}: Global home (default: ~/.rrce-workflow, customizable via storage.globalPath in config)
|
|
8
7
|
- {{WORKSPACE_ROOT}}: Workspace root directory
|
|
9
8
|
- {{WORKSPACE_NAME}}: Workspace name from config or directory name
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
- {{RRCE_DATA}}: Primary storage path (resolves based on storage mode in .rrce-workflow/config.yaml)
|
|
4
4
|
- global: {{RRCE_HOME}}/workspaces/<workspace-name>/
|
|
5
5
|
- workspace: <workspace>/.rrce-workflow/
|
|
6
|
-
- both: <workspace>/.rrce-workflow/ (primary, auto-synced to global)
|
|
7
6
|
- {{RRCE_HOME}}: Global home (default: ~/.rrce-workflow, customizable via storage.globalPath in config)
|
|
8
7
|
- {{WORKSPACE_ROOT}}: Workspace root directory
|
|
9
8
|
- {{WORKSPACE_NAME}}: Workspace name from config or directory name
|
package/dist/index.js
CHANGED
|
@@ -348,7 +348,7 @@ function loadPromptsFromDir(dirPath) {
|
|
|
348
348
|
return prompts;
|
|
349
349
|
}
|
|
350
350
|
function getAgentCoreDir() {
|
|
351
|
-
return path3.join(__dirname, "..", "
|
|
351
|
+
return path3.join(__dirname, "..", "agent-core");
|
|
352
352
|
}
|
|
353
353
|
function getAgentCorePromptsDir() {
|
|
354
354
|
return path3.join(getAgentCoreDir(), "prompts");
|
|
@@ -609,7 +609,7 @@ async function runSetupFlow(workspacePath, workspaceName, existingProjects) {
|
|
|
609
609
|
});
|
|
610
610
|
},
|
|
611
611
|
addToGitignore: () => confirm({
|
|
612
|
-
message: "Add generated folders to .gitignore?",
|
|
612
|
+
message: "Add generated folders to .gitignore? (as comments - uncomment if needed)",
|
|
613
613
|
initialValue: true
|
|
614
614
|
}),
|
|
615
615
|
confirm: () => confirm({
|
|
@@ -841,7 +841,11 @@ function updateGitignore(workspacePath, storageMode, tools) {
|
|
|
841
841
|
const newEntries = [];
|
|
842
842
|
for (const entry of entries) {
|
|
843
843
|
const entryWithoutSlash = entry.replace(/\/$/, "");
|
|
844
|
-
|
|
844
|
+
const commentedEntry = `# ${entry}`;
|
|
845
|
+
const commentedEntryNoSlash = `# ${entryWithoutSlash}`;
|
|
846
|
+
if (!lines.some(
|
|
847
|
+
(line) => line === entry || line === entryWithoutSlash || line === commentedEntry || line === commentedEntryNoSlash
|
|
848
|
+
)) {
|
|
845
849
|
newEntries.push(entry);
|
|
846
850
|
}
|
|
847
851
|
}
|
|
@@ -853,9 +857,9 @@ function updateGitignore(workspacePath, storageMode, tools) {
|
|
|
853
857
|
newContent += "\n";
|
|
854
858
|
}
|
|
855
859
|
if (newContent === "" || !content.includes("# rrce-workflow")) {
|
|
856
|
-
newContent += "\n# rrce-workflow generated folders\n";
|
|
860
|
+
newContent += "\n# rrce-workflow generated folders (uncomment to ignore)\n";
|
|
857
861
|
}
|
|
858
|
-
newContent += newEntries.join("\n") + "\n";
|
|
862
|
+
newContent += newEntries.map((e) => `# ${e}`).join("\n") + "\n";
|
|
859
863
|
fs7.writeFileSync(gitignorePath, newContent);
|
|
860
864
|
return true;
|
|
861
865
|
} catch {
|
package/docs/architecture.md
CHANGED
|
@@ -66,12 +66,11 @@ The system provides a structured multi-agent pipeline for software development t
|
|
|
66
66
|
|------|----------|----------|
|
|
67
67
|
| `global` (default) | `~/.rrce-workflow/workspaces/<workspace-name>/` | Non-intrusive, survives repo deletion |
|
|
68
68
|
| `workspace` | `<workspace>/.rrce-workflow/` | Portable, team-shareable |
|
|
69
|
-
| `both` | Both locations with sync | Redundancy, flexibility |
|
|
70
69
|
|
|
71
70
|
Configure via `.rrce-workflow.yaml`:
|
|
72
71
|
```yaml
|
|
73
72
|
storage:
|
|
74
|
-
mode: global # or: workspace
|
|
73
|
+
mode: global # or: workspace
|
|
75
74
|
```
|
|
76
75
|
|
|
77
76
|
### Environment Variables
|