@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.
- package/README.md +4 -4
- package/content/agents-section.md +190 -0
- package/content/soul-section.md +91 -0
- package/content/templates/spec-to-code-guide.md +250 -0
- package/content/templates/spec.md +171 -0
- package/content/tools-platform.md +68 -0
- package/dist/cli.js +18874 -70
- package/dist/index.js +20297 -86
- package/dist/rollup.config.d.ts +4 -0
- package/dist/skills/jeeves-meta/SKILL.md +53 -11
- package/dist/src/cli.d.ts +1 -2
- package/dist/src/constants.d.ts +7 -0
- package/dist/src/helpers.d.ts +2 -42
- package/dist/src/index.d.ts +1 -1
- package/dist/src/serviceClient.d.ts +5 -3
- package/dist/src/tools.d.ts +1 -1
- package/openclaw.plugin.json +4 -3
- package/package.json +8 -4
|
@@ -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}}
|