soulcraft 0.1.1 → 0.2.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 +14 -21
- package/dist/cli.js +157 -92
- package/dist/cli.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -6,11 +6,19 @@ Your AI agent is generic because you never onboarded it.
|
|
|
6
6
|
npx soulcraft
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
12 questions. 2 minutes.
|
|
9
|
+
12 questions. 2 minutes. Personalized agent.
|
|
10
10
|
|
|
11
|
-
##
|
|
11
|
+
## How it works
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
First question: **are you the human or the agent?**
|
|
14
|
+
|
|
15
|
+
### 🧑 Human path
|
|
16
|
+
Answer 12 questions about how you want your AI to behave. Soulcraft generates a ready-to-paste prompt with your answers — send it to your agent and it crafts personalized workspace files using the full context of your answers.
|
|
17
|
+
|
|
18
|
+
### 🤖 Agent path
|
|
19
|
+
Soulcraft outputs detailed instructions for the agent: all 12 questions, the file structure, and how to synthesize answers into cohesive personality files. The agent then quizzes you interactively in chat.
|
|
20
|
+
|
|
21
|
+
Both paths end with the AI generating these files:
|
|
14
22
|
|
|
15
23
|
| File | Purpose |
|
|
16
24
|
|------|---------|
|
|
@@ -19,7 +27,9 @@ You answer questions about how you want your AI to behave — communication styl
|
|
|
19
27
|
| `IDENTITY.md` | Agent name, vibe, emoji |
|
|
20
28
|
| `AGENTS.md` | Behavioral rules, memory, safety |
|
|
21
29
|
|
|
22
|
-
|
|
30
|
+
## Why AI-generated, not templates?
|
|
31
|
+
|
|
32
|
+
The *combination* of your answers matters. "Blunt + very opinionated + colleague dynamic" produces a fundamentally different personality than "warm + minimal opinions + assistant dynamic." An AI synthesizing all 12 answers together writes better files than any template could.
|
|
23
33
|
|
|
24
34
|
## Options
|
|
25
35
|
|
|
@@ -28,15 +38,6 @@ npx soulcraft --dry-run # preview without writing
|
|
|
28
38
|
npx soulcraft --output-dir ./out # write somewhere specific
|
|
29
39
|
```
|
|
30
40
|
|
|
31
|
-
## Existing setup?
|
|
32
|
-
|
|
33
|
-
Soulcraft detects your current workspace files and asks how to handle them:
|
|
34
|
-
|
|
35
|
-
- **Fresh start** — replace everything
|
|
36
|
-
- **Enhance** — merge new personality into existing files, keeping your custom sections
|
|
37
|
-
|
|
38
|
-
Your hand-written rules, project notes, custom SOUL.md sections — preserved.
|
|
39
|
-
|
|
40
41
|
## Works with
|
|
41
42
|
|
|
42
43
|
- [OpenClaw](https://github.com/openclaw/openclaw)
|
|
@@ -46,14 +47,6 @@ Your hand-written rules, project notes, custom SOUL.md sections — preserved.
|
|
|
46
47
|
|
|
47
48
|
Output is plain `.md`. No lock-in.
|
|
48
49
|
|
|
49
|
-
## As an OpenClaw skill
|
|
50
|
-
|
|
51
|
-
```bash
|
|
52
|
-
clawhub install soulcraft
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
Your agent runs the quiz conversationally in chat.
|
|
56
|
-
|
|
57
50
|
## License
|
|
58
51
|
|
|
59
52
|
MIT
|
package/dist/cli.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import * as p from '@clack/prompts';
|
|
3
3
|
import pc from 'picocolors';
|
|
4
|
-
import {
|
|
4
|
+
import { writeFileSync, existsSync, mkdirSync } from 'node:fs';
|
|
5
5
|
import { join, resolve } from 'node:path';
|
|
6
6
|
import { questions } from './questions.js';
|
|
7
|
-
import { generateFiles } from './generator.js';
|
|
8
|
-
import { mergeFiles } from './merge.js';
|
|
9
7
|
import { getSurpriseName } from './surprise.js';
|
|
10
8
|
const args = process.argv.slice(2);
|
|
11
9
|
const dryRun = args.includes('--dry-run');
|
|
@@ -27,60 +25,103 @@ function findWorkspaceDir() {
|
|
|
27
25
|
return openclawWorkspace;
|
|
28
26
|
return process.cwd();
|
|
29
27
|
}
|
|
30
|
-
function loadExistingFiles(dir) {
|
|
31
|
-
const files = {};
|
|
32
|
-
const names = ['SOUL.md', 'USER.md', 'IDENTITY.md', 'AGENTS.md'];
|
|
33
|
-
for (const name of names) {
|
|
34
|
-
const path = join(dir, name);
|
|
35
|
-
if (existsSync(path)) {
|
|
36
|
-
files[name] = readFileSync(path, 'utf-8');
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
return files;
|
|
40
|
-
}
|
|
41
28
|
function isCancel(value) {
|
|
42
29
|
return p.isCancel(value);
|
|
43
30
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
31
|
+
function formatAnswerSummary(answers) {
|
|
32
|
+
const labelMap = {
|
|
33
|
+
name: 'Name',
|
|
34
|
+
timezone: 'Timezone',
|
|
35
|
+
personality: 'Personality',
|
|
36
|
+
opinions: 'Opinions',
|
|
37
|
+
uncertainty: 'Uncertainty handling',
|
|
38
|
+
autonomy: 'Autonomy',
|
|
39
|
+
dynamic: 'Dynamic',
|
|
40
|
+
pushback: 'Pushback style',
|
|
41
|
+
verbosity: 'Verbosity',
|
|
42
|
+
priority: 'Priority',
|
|
43
|
+
privacy: 'Privacy',
|
|
44
|
+
'agent-name': 'Agent name',
|
|
45
|
+
'agent-emoji': 'Agent emoji',
|
|
46
|
+
};
|
|
47
|
+
const lines = [];
|
|
48
|
+
for (const [key, value] of Object.entries(answers)) {
|
|
49
|
+
const label = labelMap[key] || key;
|
|
50
|
+
lines.push(`- **${label}:** ${value}`);
|
|
54
51
|
}
|
|
52
|
+
return lines.join('\n');
|
|
53
|
+
}
|
|
54
|
+
function generateUserPrompt(answers) {
|
|
55
|
+
const summary = formatAnswerSummary(answers);
|
|
56
|
+
return `Please update my workspace files (SOUL.md, USER.md, IDENTITY.md, AGENTS.md) based on these personality quiz answers:
|
|
57
|
+
|
|
58
|
+
${summary}
|
|
59
|
+
|
|
60
|
+
Use these answers to craft personalized files. The combination of answers matters — synthesize them into a cohesive personality, don't just template each answer individually. For existing files, keep any custom sections I've added (project notes, custom rules, etc.) and layer in the personality calibration.`;
|
|
61
|
+
}
|
|
62
|
+
function generateAgentPrompt() {
|
|
63
|
+
const questionList = questions.map((q, i) => {
|
|
64
|
+
let text = `${i + 1}. ${q.text}`;
|
|
65
|
+
if (q.options) {
|
|
66
|
+
const presets = q.options
|
|
67
|
+
.filter(o => o.value !== '__custom__' && o.value !== '__name-emoji__' && o.value !== '__surprise__')
|
|
68
|
+
.map((o, j) => ` ${String.fromCharCode(97 + j)}) ${o.label}${o.hint ? ` — ${o.hint}` : ''}`)
|
|
69
|
+
.join('\n');
|
|
70
|
+
if (presets)
|
|
71
|
+
text += '\n' + presets;
|
|
72
|
+
text += '\n Or they can type their own answer.';
|
|
73
|
+
}
|
|
74
|
+
return text;
|
|
75
|
+
}).join('\n\n');
|
|
76
|
+
const files = ['SOUL.md', 'USER.md', 'IDENTITY.md', 'AGENTS.md'];
|
|
77
|
+
return `Run a personality quiz with the user to craft their workspace files. Ask these 12 questions ONE AT A TIME conversationally (not robotic). Present preset options as a/b/c/d but always mention they can type a custom answer.
|
|
78
|
+
|
|
79
|
+
QUESTIONS:
|
|
80
|
+
|
|
81
|
+
${questionList}
|
|
82
|
+
|
|
83
|
+
AFTER COLLECTING ALL ANSWERS:
|
|
84
|
+
|
|
85
|
+
Check if these files exist: ${files.join(', ')}
|
|
86
|
+
- If they exist, ask: Fresh start (replace) or Enhance (keep custom sections, layer in personality)?
|
|
87
|
+
- If not, generate from scratch.
|
|
88
|
+
|
|
89
|
+
Use the COMBINATION of all answers to craft cohesive files. Don't just template each answer — synthesize them. "Blunt + very opinionated + colleague dynamic" should produce a fundamentally different SOUL.md than "warm + minimal opinions + assistant dynamic."
|
|
90
|
+
|
|
91
|
+
Generate these files:
|
|
92
|
+
- SOUL.md — personality, tone, boundaries, pushback style, vibe, continuity
|
|
93
|
+
- USER.md — name, timezone, communication preferences
|
|
94
|
+
- IDENTITY.md — agent name, creature type (from dynamic), vibe, emoji
|
|
95
|
+
- AGENTS.md — full OpenClaw workspace config: session startup, memory rules, safety (from autonomy), external vs internal (from autonomy), group chats (from privacy), heartbeats, tools
|
|
96
|
+
|
|
97
|
+
Write all 4 files to the workspace when done.`;
|
|
98
|
+
}
|
|
99
|
+
async function collectAnswers() {
|
|
55
100
|
const answers = {};
|
|
56
101
|
for (const q of questions) {
|
|
57
|
-
// Special handling for Q2 (timezone)
|
|
58
102
|
if (q.id === 'timezone') {
|
|
59
103
|
const detected = detectTimezone();
|
|
60
104
|
const tz = await p.text({
|
|
61
105
|
message: q.text,
|
|
62
106
|
placeholder: detected,
|
|
63
107
|
defaultValue: detected,
|
|
64
|
-
validate: (v) => {
|
|
65
|
-
|
|
66
|
-
return 'Timezone is required';
|
|
67
|
-
},
|
|
108
|
+
validate: (v) => { if (!v.trim())
|
|
109
|
+
return 'Timezone is required'; },
|
|
68
110
|
});
|
|
69
111
|
if (isCancel(tz)) {
|
|
70
|
-
p.cancel('Cancelled.
|
|
112
|
+
p.cancel('Cancelled.');
|
|
71
113
|
process.exit(0);
|
|
72
114
|
}
|
|
73
115
|
answers[q.id] = tz;
|
|
74
116
|
continue;
|
|
75
117
|
}
|
|
76
|
-
// Special handling for Q12 (agent identity)
|
|
77
118
|
if (q.id === 'agent-identity') {
|
|
78
119
|
const choice = await p.select({
|
|
79
120
|
message: q.text,
|
|
80
121
|
options: q.options.map((o) => ({ value: o.value, label: o.label, hint: o.hint })),
|
|
81
122
|
});
|
|
82
123
|
if (isCancel(choice)) {
|
|
83
|
-
p.cancel('Cancelled.
|
|
124
|
+
p.cancel('Cancelled.');
|
|
84
125
|
process.exit(0);
|
|
85
126
|
}
|
|
86
127
|
if (choice === '__surprise__') {
|
|
@@ -93,25 +134,21 @@ async function main() {
|
|
|
93
134
|
const agentName = await p.text({
|
|
94
135
|
message: "What's your agent's name?",
|
|
95
136
|
placeholder: 'e.g. Ziggy, Nova, Scout',
|
|
96
|
-
validate: (v) => {
|
|
97
|
-
|
|
98
|
-
return 'Name is required';
|
|
99
|
-
},
|
|
137
|
+
validate: (v) => { if (!v.trim())
|
|
138
|
+
return 'Name is required'; },
|
|
100
139
|
});
|
|
101
140
|
if (isCancel(agentName)) {
|
|
102
|
-
p.cancel('Cancelled.
|
|
141
|
+
p.cancel('Cancelled.');
|
|
103
142
|
process.exit(0);
|
|
104
143
|
}
|
|
105
144
|
const agentEmoji = await p.text({
|
|
106
145
|
message: 'Pick an emoji for your agent:',
|
|
107
146
|
placeholder: 'e.g. 🦊, ⚡, 🌀',
|
|
108
|
-
validate: (v) => {
|
|
109
|
-
|
|
110
|
-
return 'Emoji is required';
|
|
111
|
-
},
|
|
147
|
+
validate: (v) => { if (!v.trim())
|
|
148
|
+
return 'Emoji is required'; },
|
|
112
149
|
});
|
|
113
150
|
if (isCancel(agentEmoji)) {
|
|
114
|
-
p.cancel('Cancelled.
|
|
151
|
+
p.cancel('Cancelled.');
|
|
115
152
|
process.exit(0);
|
|
116
153
|
}
|
|
117
154
|
answers['agent-name'] = agentName;
|
|
@@ -119,7 +156,6 @@ async function main() {
|
|
|
119
156
|
}
|
|
120
157
|
continue;
|
|
121
158
|
}
|
|
122
|
-
// Free-text questions (Q1)
|
|
123
159
|
if (!q.options) {
|
|
124
160
|
const value = await p.text({
|
|
125
161
|
message: q.text,
|
|
@@ -127,84 +163,113 @@ async function main() {
|
|
|
127
163
|
return 'This is required'; } : undefined,
|
|
128
164
|
});
|
|
129
165
|
if (isCancel(value)) {
|
|
130
|
-
p.cancel('Cancelled.
|
|
166
|
+
p.cancel('Cancelled.');
|
|
131
167
|
process.exit(0);
|
|
132
168
|
}
|
|
133
169
|
answers[q.id] = value;
|
|
134
170
|
continue;
|
|
135
171
|
}
|
|
136
|
-
// Select questions with custom option
|
|
137
172
|
const selected = await p.select({
|
|
138
173
|
message: q.text,
|
|
139
174
|
options: q.options.map((o) => ({ value: o.value, label: o.label, hint: o.hint })),
|
|
140
175
|
});
|
|
141
176
|
if (isCancel(selected)) {
|
|
142
|
-
p.cancel('Cancelled.
|
|
177
|
+
p.cancel('Cancelled.');
|
|
143
178
|
process.exit(0);
|
|
144
179
|
}
|
|
145
180
|
if (selected === '__custom__') {
|
|
146
181
|
const custom = await p.text({
|
|
147
|
-
message:
|
|
148
|
-
validate: (v) => {
|
|
149
|
-
|
|
150
|
-
return 'Please type something or go back';
|
|
151
|
-
},
|
|
182
|
+
message: 'Describe in your own words:',
|
|
183
|
+
validate: (v) => { if (!v.trim())
|
|
184
|
+
return 'Please type something'; },
|
|
152
185
|
});
|
|
153
186
|
if (isCancel(custom)) {
|
|
154
|
-
p.cancel('Cancelled.
|
|
187
|
+
p.cancel('Cancelled.');
|
|
155
188
|
process.exit(0);
|
|
156
189
|
}
|
|
157
190
|
answers[q.id] = custom;
|
|
158
191
|
}
|
|
159
192
|
else {
|
|
160
|
-
|
|
193
|
+
// Resolve label for readable output
|
|
194
|
+
const opt = q.options.find(o => o.value === selected);
|
|
195
|
+
answers[q.id] = opt ? `${opt.label}${opt.hint ? ` — ${opt.hint}` : ''}` : selected;
|
|
161
196
|
}
|
|
162
197
|
}
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
198
|
+
return answers;
|
|
199
|
+
}
|
|
200
|
+
async function main() {
|
|
201
|
+
console.log('');
|
|
202
|
+
console.log(pc.bold(pc.magenta(' ✨ soulcraft')) + pc.dim(' — craft your agent\'s soul'));
|
|
203
|
+
console.log('');
|
|
204
|
+
p.intro(pc.cyan('Personalize your AI agent in 2 minutes.'));
|
|
205
|
+
// First question: who's running this?
|
|
206
|
+
const runner = await p.select({
|
|
207
|
+
message: "Who's running this?",
|
|
208
|
+
options: [
|
|
209
|
+
{ value: 'user', label: '🧑 I am (the human)', hint: "I'll answer questions and get a prompt to send my agent" },
|
|
210
|
+
{ value: 'agent', label: '🤖 I\'m an AI agent', hint: "I'll get instructions to quiz my human interactively" },
|
|
211
|
+
],
|
|
212
|
+
});
|
|
213
|
+
if (isCancel(runner)) {
|
|
214
|
+
p.cancel('Cancelled.');
|
|
215
|
+
process.exit(0);
|
|
181
216
|
}
|
|
182
|
-
//
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
if (!existsSync(workspaceDir)) {
|
|
190
|
-
mkdirSync(workspaceDir, { recursive: true });
|
|
217
|
+
// ── Agent path ──
|
|
218
|
+
if (runner === 'agent') {
|
|
219
|
+
const prompt = generateAgentPrompt();
|
|
220
|
+
if (dryRun) {
|
|
221
|
+
console.log('');
|
|
222
|
+
console.log(pc.bold(pc.cyan('── Agent instructions ──')));
|
|
223
|
+
console.log(prompt);
|
|
191
224
|
}
|
|
192
|
-
|
|
193
|
-
const
|
|
194
|
-
|
|
225
|
+
else {
|
|
226
|
+
const workspaceDir = findWorkspaceDir();
|
|
227
|
+
const outputPath = join(workspaceDir, 'soulcraft-agent-prompt.md');
|
|
228
|
+
if (!existsSync(workspaceDir))
|
|
229
|
+
mkdirSync(workspaceDir, { recursive: true });
|
|
230
|
+
writeFileSync(outputPath, prompt + '\n', 'utf-8');
|
|
231
|
+
console.log('');
|
|
232
|
+
console.log(pc.bold(pc.green(' Instructions generated!')));
|
|
233
|
+
console.log('');
|
|
234
|
+
console.log(pc.dim(' Send this to your agent:'));
|
|
235
|
+
console.log('');
|
|
236
|
+
console.log(` ${pc.cyan(outputPath)}`);
|
|
237
|
+
console.log('');
|
|
238
|
+
console.log(pc.dim(' Or copy-paste the text below into your agent chat:'));
|
|
239
|
+
console.log('');
|
|
240
|
+
console.log(pc.dim('─'.repeat(60)));
|
|
241
|
+
console.log(prompt);
|
|
242
|
+
console.log(pc.dim('─'.repeat(60)));
|
|
195
243
|
}
|
|
196
|
-
p.outro(pc.green('✅ Done!') +
|
|
197
|
-
|
|
244
|
+
p.outro(pc.green('✅ Done!') + pc.dim(' Your agent will handle the rest.'));
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
// ── User path ──
|
|
248
|
+
const answers = await collectAnswers();
|
|
249
|
+
const prompt = generateUserPrompt(answers);
|
|
250
|
+
if (dryRun) {
|
|
251
|
+
console.log('');
|
|
252
|
+
console.log(pc.bold(pc.cyan('── Send this to your agent ──')));
|
|
253
|
+
console.log(prompt);
|
|
198
254
|
}
|
|
199
255
|
else {
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
256
|
+
const workspaceDir = findWorkspaceDir();
|
|
257
|
+
const outputPath = join(workspaceDir, 'soulcraft-prompt.md');
|
|
258
|
+
if (!existsSync(workspaceDir))
|
|
259
|
+
mkdirSync(workspaceDir, { recursive: true });
|
|
260
|
+
writeFileSync(outputPath, prompt + '\n', 'utf-8');
|
|
261
|
+
console.log('');
|
|
262
|
+
console.log(pc.bold(pc.green(' Your prompt is ready!')));
|
|
263
|
+
console.log('');
|
|
264
|
+
console.log(pc.dim(' Send this to your agent to update your workspace files:'));
|
|
265
|
+
console.log('');
|
|
266
|
+
console.log(pc.dim('─'.repeat(60)));
|
|
267
|
+
console.log(prompt);
|
|
268
|
+
console.log(pc.dim('─'.repeat(60)));
|
|
269
|
+
console.log('');
|
|
270
|
+
console.log(pc.dim(` Also saved to: ${outputPath}`));
|
|
207
271
|
}
|
|
272
|
+
p.outro(pc.green('✅ Done!') + pc.dim(' Copy the text above and send it to your agent.'));
|
|
208
273
|
}
|
|
209
274
|
main().catch((err) => {
|
|
210
275
|
console.error(pc.red('Error:'), err);
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|