@karmaniverous/jeeves-meta-openclaw 0.4.0 → 0.5.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.
@@ -0,0 +1,171 @@
1
+ ---
2
+ title: "{package-name} — Product Specification"
3
+ date: YYYY-MM-DD
4
+ status: Pre-version (design)
5
+ authors:
6
+ - {author}
7
+ spec-version: "{next-version}"
8
+ previous: "{previous-spec-filename}"
9
+ ---
10
+
11
+ # {package-name} — Product Specification
12
+
13
+ <!-- Spec Discipline:
14
+ 1. Current Version stays locked during Next Version design
15
+ 2. Next Version is the active design space
16
+ 3. When Next Version is implemented: freeze the spec, run the verification checklist
17
+ 4. On green: archive spec as spec-v{next}.md, update Current Version to match reality,
18
+ promote backlog items to Next Version
19
+ -->
20
+
21
+ ## Spec Discipline
22
+
23
+ 1. **Current Version** stays locked during Next Version design
24
+ 2. Next Version is the active design space
25
+ 3. When Next Version is implemented: freeze the spec, run the checklist
26
+ 4. On green: archive spec as `spec-v{next}.md`, update Current Version to match reality, promote backlog items to Next Version
27
+
28
+ ## 1. Overview
29
+
30
+ <!-- What is this package? What problem does it solve? What are its boundaries?
31
+ Include: repo, npm package name, license, CLI command (if any).
32
+ Clearly state what it IS and what it IS NOT. -->
33
+
34
+ **Repo:** `@karmaniverous/{package-name}`
35
+ **npm:** `@karmaniverous/{package-name}`
36
+ **License:** BSD-3-Clause
37
+
38
+ ### What {package-name} Is
39
+
40
+ - {primary purpose}
41
+
42
+ ### What {package-name} Is Not
43
+
44
+ - {explicit non-goals}
45
+
46
+ ## 2. Vision
47
+
48
+ <!-- High-level architecture diagram (PlantUML recommended) and narrative.
49
+ How does this component fit into the broader system?
50
+ Include a component/capability table if relevant. -->
51
+
52
+ ### Platform Components
53
+
54
+ <!-- If this is part of a larger platform, list all components with roles and versions. -->
55
+
56
+ | Component | Role | Current Version |
57
+ |-----------|------|-----------------|
58
+ | **{component}** | {role} | {version} |
59
+
60
+ ## 3. Current Version
61
+
62
+ <!-- Lock this section once Next Version design begins.
63
+ Document what is currently shipped and working.
64
+ If no version has shipped yet: "No current version. {package-name} has not yet been built." -->
65
+
66
+ No current version. {package-name} has not yet been built.
67
+
68
+ ## 4. Next Version: {version}
69
+
70
+ | Package | Version |
71
+ |---------|---------|
72
+ | `@karmaniverous/{package-name}` | {version} |
73
+
74
+ ### Scope
75
+
76
+ <!-- What's in scope for this version? What's explicitly out of scope?
77
+ Be precise — this is the contract. -->
78
+
79
+ **In scope:**
80
+ 1. {feature}
81
+
82
+ **Out of scope (Phase 2+):**
83
+ - {deferred feature}
84
+
85
+ ### Architecture
86
+
87
+ <!-- Detailed technical design. Include:
88
+ - Package/directory structure
89
+ - Dependency model
90
+ - Key interfaces and APIs
91
+ - Data flow diagrams
92
+ - Configuration schema -->
93
+
94
+ ### Design Decisions
95
+
96
+ <!-- Numbered for reference. New decisions append; existing decisions are immutable once recorded.
97
+ Format:
98
+
99
+ #### Decision N: {Title}
100
+
101
+ {Description of the decision, rationale, alternatives considered, and consequences.}
102
+
103
+ Each decision is a permanent record. If a decision needs to be revised, add a new decision
104
+ that supersedes it and note the supersession in both. -->
105
+
106
+ #### Decision 1: {Title}
107
+
108
+ {Decision description and rationale.}
109
+
110
+ ### Dev Plan
111
+
112
+ <!-- Two tables: Complete and Incomplete. Tasks are numbered for reference.
113
+ Dependencies reference task numbers. Move tasks from Incomplete to Complete
114
+ as they are implemented. -->
115
+
116
+ #### Complete
117
+
118
+ <!-- | # | Task | Depends On |
119
+ |---|------|------------|
120
+ | 1 | {completed task} | — | -->
121
+
122
+ *No tasks completed yet.*
123
+
124
+ #### Incomplete
125
+
126
+ | # | Task | Depends On |
127
+ |---|------|------------|
128
+ | 1 | {task description} | — |
129
+ | 2 | {task description} | 1 |
130
+
131
+ ### Release Sequence
132
+
133
+ <!-- Ordered list of release steps. What gets published first?
134
+ What can be parallel? What must be serial? -->
135
+
136
+ 1. {step}
137
+
138
+ ### Verification Checklist
139
+
140
+ <!-- Concrete, testable assertions that must all pass before the version ships.
141
+ Format: - [ ] {assertion} -->
142
+
143
+ - [ ] {verification item}
144
+
145
+ ## 5. Backlog
146
+
147
+ <!-- Future work not scoped to any specific version. Items here are candidates
148
+ for promotion to the next Next Version. Brief descriptions only —
149
+ detailed design happens when promoted. -->
150
+
151
+ - **{Feature name}** — {brief description}
152
+
153
+ ## 6. Open Questions
154
+
155
+ <!-- Numbered questions that need resolution. When resolved, strike through
156
+ and note the resolution inline (don't delete — the history is valuable).
157
+ Format:
158
+ 1. ~~{Question}~~ Resolved by Decision N: {brief summary}
159
+ 2. {Open question still needing resolution} -->
160
+
161
+ 1. {question}
162
+
163
+ ## 7. Superseded Documents
164
+
165
+ <!-- Documents that this spec replaces or incorporates. Keep for historical reference.
166
+ Format:
167
+ | Document | Date | What It Covered |
168
+ |----------|------|-----------------|
169
+ | {filename} | YYYY-MM-DD | {description} | -->
170
+
171
+ *No superseded documents.*
@@ -0,0 +1,68 @@
1
+ | Component | Port | Status | Service | Plugin | Core |
2
+ |-----------|------|--------|---------|--------|------|
3
+ {{#each services}}
4
+ | **{{name}}** | {{port}} | {{#if healthy}}✅ Running{{else}}{{#if error}}⚠️ {{error}}{{else}}❌ Down{{/if}}{{/if}} | {{#if version}}{{version}}{{#if availableServiceVersion}} (⬆ {{availableServiceVersion}}){{/if}}{{else}}—{{/if}} | {{#if pluginVersion}}{{pluginVersion}}{{#if availablePluginVersion}} (⬆ {{availablePluginVersion}}){{/if}}{{else}}—{{/if}} | {{../coreVersion}}{{#if ../availableCoreVersion}} (⬆ {{../availableCoreVersion}}){{/if}} |
5
+ {{/each}}
6
+
7
+ {{#if unhealthyServices}}
8
+ > **ACTION REQUIRED:** {{#each unhealthyServices}}{{name}}{{#unless @last}}, {{/unless}}{{/each}} {{#if (gt unhealthyServices.length 1)}}are{{else}}is{{/if}} unreachable. Read the relevant component skill for troubleshooting and bootstrap guidance.
9
+ {{/if}}
10
+
11
+ ### Tool Hierarchy
12
+
13
+ When searching for information across indexed paths, **always use `watcher_search` before filesystem commands** (`exec`, `grep`, `find`). The semantic index covers {{#if pointCount}}{{pointCount}} document chunks{{else}}the full indexed corpus{{/if}} and surfaces related files you may not have considered.
14
+
15
+ Use `watcher_scan` (no embeddings, no query string) for structural queries: file enumeration, staleness checks, domain listing, counts.
16
+
17
+ Direct filesystem access is for **acting on** search results, not bypassing them.
18
+
19
+ ### Shell Scripting
20
+
21
+ Default to `node -e` or `.js` scripts for `exec` calls. PowerShell corrupts multi-byte UTF-8 characters and mangles escaping. Use PowerShell only for Windows service management, registry operations, and similar platform-specific tasks.
22
+
23
+ ### File Bridge for External Repos
24
+
25
+ When editing files outside the workspace, use the bridge pattern: copy in → edit the workspace copy → bridge out. Never write temp patch scripts. The workspace is the authoritative working directory.
26
+
27
+ ### Gateway Self-Destruction Warning
28
+
29
+ ⚠️ Any command that stops the gateway **stops the assistant**. Never run `openclaw gateway stop` or `openclaw gateway restart` without explicit owner approval. When approved, it must be the **absolute last action** — all other work must be complete first, all messages sent, all files saved.
30
+
31
+ ### Messaging
32
+
33
+ **Same-channel replies:** Don't use the `message` tool. It fires immediately, jumping ahead of streaming narration. Just write text as your response.
34
+
35
+ **Cross-channel sends:** Use the `message` tool with an explicit `target` to send to a different channel or DM.
36
+
37
+ ### Plugin Lifecycle
38
+
39
+ ```bash
40
+ # Platform bootstrap (content seeding)
41
+ npx @karmaniverous/jeeves install
42
+
43
+ # Component plugin install
44
+ npx @karmaniverous/jeeves-{component}-openclaw install
45
+
46
+ # Component plugin uninstall
47
+ npx @karmaniverous/jeeves-{component}-openclaw uninstall
48
+
49
+ # Platform teardown (remove managed sections)
50
+ npx @karmaniverous/jeeves uninstall
51
+ ```
52
+
53
+ Never manually edit `~/.openclaw/extensions/`. Always use the CLI commands above.
54
+
55
+ ### Reference Templates
56
+
57
+ {{#if templatesAvailable}}
58
+ Reference templates are available at `{{templatePath}}`:
59
+
60
+ | Template | Purpose |
61
+ |----------|---------|
62
+ | `spec.md` | Skeleton for new product specifications — all section headers, decision format, dev plan format |
63
+ | `spec-to-code-guide.md` | The spec-to-code development practice — 7-stage iterative process, convergence loops, release gates |
64
+
65
+ Read these templates when creating new specs, onboarding to new projects, or when asked about the development process.
66
+ {{else}}
67
+ > Reference templates not yet installed. Run `npx @karmaniverous/jeeves install` to seed templates.
68
+ {{/if}}