picopilot 0.2.0 → 0.2.1
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/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +129 -36
- package/dist/cli.js.map +1 -1
- package/dist/commands/audio.d.ts.map +1 -1
- package/dist/commands/audio.js +11 -3
- package/dist/commands/audio.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +7 -3
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/gfx.d.ts.map +1 -1
- package/dist/commands/gfx.js +11 -5
- package/dist/commands/gfx.js.map +1 -1
- package/dist/commands/pico8-env.d.ts +39 -3
- package/dist/commands/pico8-env.d.ts.map +1 -1
- package/dist/commands/pico8-env.js +51 -4
- package/dist/commands/pico8-env.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +8 -2
- package/dist/commands/run.js.map +1 -1
- package/package.json +2 -2
- package/src/cli.test.ts +42 -1
- package/src/cli.ts +143 -37
- package/src/commands/audio.ts +10 -3
- package/src/commands/doctor.ts +7 -3
- package/src/commands/gfx.ts +12 -9
- package/src/commands/pico8-env.ts +71 -3
- package/src/commands/run.ts +8 -2
- package/src/mcp.process.test.ts +219 -0
- package/src/skills/picopilot-overview/SKILL.md +1 -1
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,GAAG,EAAI,MAAM,OAAO,CAAC;AA+I7B;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,IAAI,GAAG,CAAC,GAAG,CAkHnC"}
|
package/dist/cli.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import { readFileSync } from 'node:fs';
|
|
1
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
2
|
+
import { homedir } from 'node:os';
|
|
3
|
+
import { join, resolve } from 'node:path';
|
|
2
4
|
import { Cli, z } from 'incur';
|
|
3
5
|
import { registerAudio } from './commands/audio.js';
|
|
4
6
|
import { registerDoctor } from './commands/doctor.js';
|
|
@@ -17,13 +19,79 @@ import { registerVerify } from './commands/verify.js';
|
|
|
17
19
|
import { registerVersion } from './commands/version.js';
|
|
18
20
|
import { DEFAULT_DISPLAY_MODE, DISPLAY_CONFIG_KEY, DISPLAY_ENV_VAR, DISPLAY_MODES, resolveDisplayMode, } from './engine/pico8/display.js';
|
|
19
21
|
import { VERSION } from './version.js';
|
|
20
|
-
/** The
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
22
|
+
/** The config files picopilot searches (first existing wins), relative to the cwd. */
|
|
23
|
+
const CONFIG_FILES = ['picopilot.json'];
|
|
24
|
+
/**
|
|
25
|
+
* Removes every `--display <v>` / `--display=<v>` from argv and returns the last
|
|
26
|
+
* value. A `--display` with no value (last token, or followed by another flag)
|
|
27
|
+
* stays in argv, so incur rejects it instead of it silently eating the next flag.
|
|
28
|
+
*/
|
|
29
|
+
function takeDisplayFlag(argv) {
|
|
30
|
+
const rest = [];
|
|
31
|
+
let display;
|
|
32
|
+
for (let i = 0; i < argv.length; i++) {
|
|
33
|
+
const a = argv[i];
|
|
34
|
+
const next = argv[i + 1];
|
|
35
|
+
if (a === '--display' && next !== undefined && !next.startsWith('-')) {
|
|
36
|
+
display = next;
|
|
37
|
+
i++;
|
|
38
|
+
}
|
|
39
|
+
else if (a.startsWith('--display=') && a.length > '--display='.length) {
|
|
40
|
+
display = a.slice('--display='.length);
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
rest.push(a);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return { argv: rest, display };
|
|
47
|
+
}
|
|
48
|
+
/** Resolves a config path the way incur does: `~` is the home dir, else relative to the cwd. */
|
|
49
|
+
function resolveConfigPath(path) {
|
|
50
|
+
return path === '~' || path.startsWith('~/')
|
|
51
|
+
? join(homedir(), path.slice(1))
|
|
52
|
+
: resolve(path);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* For `--mcp`: the config file incur would have loaded on the CLI. Mirrors
|
|
56
|
+
* incur's own parsing: `--config <p>` / `--config=<p>` / `--no-config`, the last
|
|
57
|
+
* one wins, a missing value is an error; else the first existing default file.
|
|
58
|
+
*/
|
|
59
|
+
function loadMcpConfig(argv) {
|
|
60
|
+
let explicit;
|
|
61
|
+
let disabled = false;
|
|
62
|
+
for (let i = 0; i < argv.length; i++) {
|
|
63
|
+
const a = argv[i];
|
|
64
|
+
let value;
|
|
65
|
+
if (a === '--config')
|
|
66
|
+
value = argv[++i];
|
|
67
|
+
else if (a.startsWith('--config='))
|
|
68
|
+
value = a.slice('--config='.length);
|
|
69
|
+
else if (a === '--no-config') {
|
|
70
|
+
explicit = undefined;
|
|
71
|
+
disabled = true;
|
|
72
|
+
continue;
|
|
73
|
+
}
|
|
74
|
+
else
|
|
75
|
+
continue;
|
|
76
|
+
if (value === undefined || value === '') {
|
|
77
|
+
throw new Error('Missing value for flag: --config');
|
|
78
|
+
}
|
|
79
|
+
explicit = value;
|
|
80
|
+
disabled = false;
|
|
81
|
+
}
|
|
82
|
+
if (disabled)
|
|
83
|
+
return undefined;
|
|
84
|
+
const sink = {};
|
|
85
|
+
if (explicit !== undefined) {
|
|
86
|
+
return loadConfig(resolveConfigPath(explicit), sink);
|
|
87
|
+
}
|
|
88
|
+
for (const file of CONFIG_FILES) {
|
|
89
|
+
const path = resolveConfigPath(file);
|
|
90
|
+
if (existsSync(path))
|
|
91
|
+
return loadConfig(path, sink);
|
|
92
|
+
}
|
|
93
|
+
return undefined;
|
|
94
|
+
}
|
|
27
95
|
/**
|
|
28
96
|
* Reads a picopilot.json for incur's config layer AND captures its top-level
|
|
29
97
|
* {@link DISPLAY_CONFIG_KEY}. incur only maps per-command `options` from the
|
|
@@ -82,18 +150,12 @@ export function createCli() {
|
|
|
82
150
|
// Per-cart policy config (e.g. `allowMapOverlap`); precedence argv > config > defaults.
|
|
83
151
|
config: {
|
|
84
152
|
flag: 'config',
|
|
85
|
-
files:
|
|
153
|
+
files: CONFIG_FILES,
|
|
86
154
|
loader: async (path) => loadConfig(path, configSink),
|
|
87
155
|
},
|
|
88
|
-
// The display mode (ADR-0017)
|
|
89
|
-
//
|
|
90
|
-
// > picopilot.json `display` > auto.
|
|
91
|
-
globals: z.object({
|
|
92
|
-
display: z
|
|
93
|
-
.enum(DISPLAY_MODES)
|
|
94
|
-
.optional()
|
|
95
|
-
.describe('How PICO-8 -run sessions (audio record/render, run --record-audio) get a display: auto (default: a private virtual display only when there is none), xvfb (always virtual), native (as-is). Also PICOPILOT_DISPLAY or picopilot.json "display" (under --mcp, only PICOPILOT_DISPLAY applies).'),
|
|
96
|
-
}),
|
|
156
|
+
// The display mode (ADR-0017): `--display` (a per-command option on the
|
|
157
|
+
// commands that use it, also accepted anywhere on the command line and on
|
|
158
|
+
// `--mcp`) > PICOPILOT_DISPLAY > picopilot.json `display` > auto.
|
|
97
159
|
env: z.object({
|
|
98
160
|
[DISPLAY_ENV_VAR]: z
|
|
99
161
|
.string()
|
|
@@ -102,35 +164,66 @@ export function createCli() {
|
|
|
102
164
|
}),
|
|
103
165
|
vars: z.object({
|
|
104
166
|
display: z.enum(DISPLAY_MODES).default(DEFAULT_DISPLAY_MODE),
|
|
167
|
+
displayError: z.string().optional(),
|
|
168
|
+
mcpConfig: z.record(z.string(), z.unknown()).optional(),
|
|
105
169
|
}),
|
|
170
|
+
mcp: {
|
|
171
|
+
// One MCP tool per command (incur's default is progressive discovery
|
|
172
|
+
// behind search/call meta-tools); picopilot's surface is small, and the
|
|
173
|
+
// skills name commands directly.
|
|
174
|
+
tools: { discovery: 'direct' },
|
|
175
|
+
},
|
|
106
176
|
});
|
|
177
|
+
const invocation = { mcp: false };
|
|
107
178
|
cli.use(async (c, next) => {
|
|
108
|
-
const configured =
|
|
179
|
+
const configured = invocation.mcp
|
|
180
|
+
? invocation.mcpConfig?.[DISPLAY_CONFIG_KEY]
|
|
181
|
+
: configSink.display;
|
|
109
182
|
configSink.display = undefined; // never leak into a later invocation
|
|
110
183
|
const resolved = resolveDisplayMode({
|
|
111
|
-
|
|
112
|
-
// under `--mcp` only PICOPILOT_DISPLAY applies.
|
|
113
|
-
flag: c.globals?.display,
|
|
184
|
+
flag: invocation.display,
|
|
114
185
|
env: c.env[DISPLAY_ENV_VAR],
|
|
115
186
|
config: configured,
|
|
116
187
|
});
|
|
117
|
-
if (
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
//
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
188
|
+
if (resolved.ok) {
|
|
189
|
+
c.set('display', resolved.mode);
|
|
190
|
+
}
|
|
191
|
+
else {
|
|
192
|
+
// Not an error here: only the commands that USE the display mode fail
|
|
193
|
+
// on a bad value (see resolveCommandDisplay); the rest run as usual.
|
|
194
|
+
const where = resolved.source === 'flag'
|
|
195
|
+
? '--display'
|
|
196
|
+
: resolved.source === 'env'
|
|
197
|
+
? DISPLAY_ENV_VAR
|
|
198
|
+
: `picopilot.json "${DISPLAY_CONFIG_KEY}"`;
|
|
199
|
+
c.set('displayError', `${where} is "${resolved.value}"; expected one of: ${DISPLAY_MODES.join(', ')}.`);
|
|
200
|
+
}
|
|
201
|
+
if (invocation.mcp && invocation.mcpConfig !== undefined) {
|
|
202
|
+
c.set('mcpConfig', invocation.mcpConfig);
|
|
130
203
|
}
|
|
131
|
-
c.set('display', resolved.mode);
|
|
132
204
|
await next();
|
|
133
205
|
});
|
|
206
|
+
// Capture the top-level `--display` (and, for `--mcp`, the config) before
|
|
207
|
+
// incur parses argv; see {@link Invocation}.
|
|
208
|
+
const serve = cli.serve.bind(cli);
|
|
209
|
+
cli.serve = async (argv = process.argv.slice(2), options) => {
|
|
210
|
+
const taken = takeDisplayFlag(argv);
|
|
211
|
+
invocation.display = taken.display;
|
|
212
|
+
invocation.mcp = taken.argv.includes('--mcp');
|
|
213
|
+
invocation.mcpConfig = undefined;
|
|
214
|
+
if (invocation.mcp) {
|
|
215
|
+
try {
|
|
216
|
+
invocation.mcpConfig = loadMcpConfig(taken.argv);
|
|
217
|
+
}
|
|
218
|
+
catch (e) {
|
|
219
|
+
// A broken config must stop the server visibly, not serve without it.
|
|
220
|
+
process.stderr.write(`picopilot --mcp: ${e instanceof Error ? e.message : String(e)}\n`);
|
|
221
|
+
process.exitCode = 1;
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
return serve(taken.argv, options);
|
|
226
|
+
};
|
|
134
227
|
// The register* helpers take the untyped Cli: the display var is read through
|
|
135
228
|
// `displayModeOf`, so they do not depend on this CLI's generics.
|
|
136
229
|
const root = cli;
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audio.d.ts","sourceRoot":"","sources":["../../src/commands/audio.ts"],"names":[],"mappings":"AASA,OAAO,EAAC,GAAG,EAAI,MAAM,OAAO,CAAC;AAW7B,OAAO,EAKN,KAAK,mBAAmB,
|
|
1
|
+
{"version":3,"file":"audio.d.ts","sourceRoot":"","sources":["../../src/commands/audio.ts"],"names":[],"mappings":"AASA,OAAO,EAAC,GAAG,EAAI,MAAM,OAAO,CAAC;AAW7B,OAAO,EAKN,KAAK,mBAAmB,EAGxB,MAAM,gBAAgB,CAAC;AAExB;;;;;GAKG;AACH,YAAY,EAAC,mBAAmB,EAAC,MAAM,gBAAgB,CAAC;AAuYxD;;;;;GAKG;AACH,wBAAgB,aAAa,CAC5B,GAAG,EAAE,GAAG,CAAC,GAAG,EACZ,cAAc,GAAE,mBAA2C,GACzD,IAAI,CAEN"}
|
package/dist/commands/audio.js
CHANGED
|
@@ -4,7 +4,7 @@ import { isAbsolute, join, resolve } from 'node:path';
|
|
|
4
4
|
import { Cli, z } from 'incur';
|
|
5
5
|
import { buildRecordHarness, buildRenderHarness, DONE_SENTINEL, HarnessError, } from '../engine/pico8/index.js';
|
|
6
6
|
import { makeReadInclude } from './cart-includes.js';
|
|
7
|
-
import { createShellAdapterFactory,
|
|
7
|
+
import { createShellAdapterFactory, DISPLAY_OPTION, displayUnavailableError, PICO8_ENV, pico8NotFoundError, resolveCommandDisplay, } from './pico8-env.js';
|
|
8
8
|
const defaultAdapterFactory = createShellAdapterFactory();
|
|
9
9
|
/**
|
|
10
10
|
* The default record backstop: kill a capture that never signals after this many
|
|
@@ -151,6 +151,7 @@ function buildAudioGroup(adapterFactory) {
|
|
|
151
151
|
.positive()
|
|
152
152
|
.default(DEFAULT_BACKSTOP_MS)
|
|
153
153
|
.describe('Safety backstop: kill PICO-8 after this many ms if it never signals.'),
|
|
154
|
+
display: DISPLAY_OPTION,
|
|
154
155
|
}),
|
|
155
156
|
env: AUDIO_ENV,
|
|
156
157
|
output: AUDIO_OUTPUT,
|
|
@@ -192,8 +193,11 @@ function buildAudioGroup(adapterFactory) {
|
|
|
192
193
|
const wavDir = chooseWavDir(options.wavDir);
|
|
193
194
|
const harnessCart = join(wavDir, 'record-harness.p8');
|
|
194
195
|
writeFileSync(harnessCart, harness.cartText);
|
|
196
|
+
const display = resolveCommandDisplay(options.display, vars);
|
|
197
|
+
if (!display.ok)
|
|
198
|
+
return error(display.error);
|
|
195
199
|
const adapter = adapterFactory(env, {
|
|
196
|
-
display:
|
|
200
|
+
display: display.mode,
|
|
197
201
|
});
|
|
198
202
|
const result = await adapter.record({
|
|
199
203
|
cartPath: harnessCart,
|
|
@@ -251,6 +255,7 @@ function buildAudioGroup(adapterFactory) {
|
|
|
251
255
|
.positive()
|
|
252
256
|
.default(DEFAULT_BACKSTOP_MS)
|
|
253
257
|
.describe('Safety backstop: kill PICO-8 after this many ms if it never signals.'),
|
|
258
|
+
display: DISPLAY_OPTION,
|
|
254
259
|
}),
|
|
255
260
|
env: AUDIO_ENV,
|
|
256
261
|
output: AUDIO_OUTPUT,
|
|
@@ -302,8 +307,11 @@ function buildAudioGroup(adapterFactory) {
|
|
|
302
307
|
const wavDir = chooseWavDir(options.wavDir);
|
|
303
308
|
const harnessCart = join(wavDir, 'render-harness.p8');
|
|
304
309
|
writeFileSync(harnessCart, harness.cartText);
|
|
310
|
+
const display = resolveCommandDisplay(options.display, vars);
|
|
311
|
+
if (!display.ok)
|
|
312
|
+
return error(display.error);
|
|
305
313
|
const adapter = adapterFactory(env, {
|
|
306
|
-
display:
|
|
314
|
+
display: display.mode,
|
|
307
315
|
});
|
|
308
316
|
const result = await adapter.record({
|
|
309
317
|
cartPath: harnessCart,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audio.js","sourceRoot":"","sources":["../../src/commands/audio.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,aAAa,GACb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAC,MAAM,EAAC,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAC,UAAU,EAAE,IAAI,EAAE,OAAO,EAAC,MAAM,WAAW,CAAC;AACpD,OAAO,EAAC,GAAG,EAAE,CAAC,EAAC,MAAM,OAAO,CAAC;AAE7B,OAAO,EACN,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,EACb,YAAY,GAGZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACN,yBAAyB,EACzB,
|
|
1
|
+
{"version":3,"file":"audio.js","sourceRoot":"","sources":["../../src/commands/audio.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,KAAK,GAAG,EAAI,MAAM,OAAO,CAAC;AAYlC,OAAO,
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,KAAK,GAAG,EAAI,MAAM,OAAO,CAAC;AAYlC,OAAO,EAKN,KAAK,mBAAmB,EACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEN,KAAK,qBAAqB,EAC1B,MAAM,kBAAkB,CAAC;AA6D1B,qEAAqE;AACrE,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC;IACzC,yFAAyF;IACzF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACvC,qDAAqD;IACrD,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,UAAU,KAAK,MAAM,GAAG,SAAS,CAAC;CAC7E;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,GAAE,UAAe,GAAG,IAAI,CAmLxE"}
|
package/dist/commands/doctor.js
CHANGED
|
@@ -3,7 +3,7 @@ import { tmpdir } from 'node:os';
|
|
|
3
3
|
import { join } from 'node:path';
|
|
4
4
|
import { z } from 'incur';
|
|
5
5
|
import { DISPLAY_MODES, detectVirtualDisplayBackend, findExecutable, hasNativeDisplay, needsVirtualDisplay, pico8Candidates, pico8ChildEnv, } from '../engine/pico8/index.js';
|
|
6
|
-
import { createShellAdapterFactory,
|
|
6
|
+
import { createShellAdapterFactory, DISPLAY_OPTION, PICO8_ENV, resolveCommandDisplay, } from './pico8-env.js';
|
|
7
7
|
import { createShellShrinkoFactory, } from './shrinko-env.js';
|
|
8
8
|
/** The marker the version-probe cart prints in front of `stat(5)`. */
|
|
9
9
|
const VERSION_MARKER = '__PICOPILOT_PICO8_VERSION__';
|
|
@@ -67,6 +67,7 @@ export function registerDoctor(cli, deps = {}) {
|
|
|
67
67
|
cli.command('doctor', {
|
|
68
68
|
description: 'Report what this machine can do: PICO-8 (found, runs headless, version), shrinko8, the display a PICO-8 -run session would use (native / virtual Xvfb / none), and which picopilot commands are therefore available. Call this first on a new machine.',
|
|
69
69
|
env: PICO8_ENV,
|
|
70
|
+
options: z.object({ display: DISPLAY_OPTION }),
|
|
70
71
|
output: z.object({
|
|
71
72
|
pico8: z.object({
|
|
72
73
|
found: z.boolean().describe('Whether the PICO-8 binary was found.'),
|
|
@@ -113,8 +114,11 @@ export function registerDoctor(cli, deps = {}) {
|
|
|
113
114
|
}))
|
|
114
115
|
.describe('Commands that do not, and what they are missing.'),
|
|
115
116
|
}),
|
|
116
|
-
async run({ env, ok, var: vars }) {
|
|
117
|
-
const
|
|
117
|
+
async run({ env, ok, error, options, var: vars }) {
|
|
118
|
+
const resolved = resolveCommandDisplay(options.display, vars);
|
|
119
|
+
if (!resolved.ok)
|
|
120
|
+
return error(resolved.error);
|
|
121
|
+
const display = resolved.mode;
|
|
118
122
|
const childEnv = pico8ChildEnv(env, deps.parentEnv ?? process.env);
|
|
119
123
|
// --- PICO-8: locate, then a real headless probe for the version.
|
|
120
124
|
const [pico8File] = pico8Candidates(childEnv);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AACzE,OAAO,EAAC,MAAM,EAAC,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAW,CAAC,EAAC,MAAM,OAAO,CAAC;AAClC,OAAO,EACN,aAAa,EAEb,2BAA2B,EAC3B,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,aAAa,GAEb,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACN,yBAAyB,EACzB,
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gfx.d.ts","sourceRoot":"","sources":["../../src/commands/gfx.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,GAAG,EAAI,MAAM,OAAO,CAAC;AAqB7B,OAAO,EAEN,KAAK,qBAAqB,EAC1B,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"gfx.d.ts","sourceRoot":"","sources":["../../src/commands/gfx.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,GAAG,EAAI,MAAM,OAAO,CAAC;AAqB7B,OAAO,EAEN,KAAK,qBAAqB,EAC1B,MAAM,kBAAkB,CAAC;AAG1B,8FAA8F;AAC9F,YAAY,EAAC,qBAAqB,EAAC,MAAM,kBAAkB,CAAC;AAK5D;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,IAAI,CAAC;AA2kBlC;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAC1B,GAAG,EAAE,GAAG,CAAC,GAAG,EACZ,cAAc,GAAE,qBAA6C,GAC3D,IAAI,CAEN"}
|
package/dist/commands/gfx.js
CHANGED
|
@@ -5,6 +5,7 @@ import { Cart, CartParseError, GFX_WIDTH, GfxSheet, SPRITE_SIZE, spriteAliasesMa
|
|
|
5
5
|
import { decideOverlap, GfxGridError, gridToNibbles, nibblesToGrid, renderSheetPng, renderSpritePng, SHEET_RENDER_SCALE, SPRITE_RENDER_SCALE, } from '../engine/gfx/index.js';
|
|
6
6
|
import {} from '../engine/shrinko/index.js';
|
|
7
7
|
import { createShellShrinkoFactory, } from './shrinko-env.js';
|
|
8
|
+
import { mcpConfigOption } from './pico8-env.js';
|
|
8
9
|
const defaultShrinkoFactory = createShellShrinkoFactory();
|
|
9
10
|
/**
|
|
10
11
|
* The exit code for the `map-overlap` refusal. Chosen as 1 (a plain failure),
|
|
@@ -146,10 +147,12 @@ function buildGfxGroup(shrinkoFactory) {
|
|
|
146
147
|
.describe('The .p8 cart to write. Defaults to main.p8 in the current folder.'),
|
|
147
148
|
}),
|
|
148
149
|
options: z.object({
|
|
150
|
+
// No zod default: an absent value must stay distinguishable, so that under
|
|
151
|
+
// `--mcp` (where incur loads no config) picopilot.json still applies.
|
|
149
152
|
allowMapOverlap: z
|
|
150
153
|
.boolean()
|
|
151
|
-
.
|
|
152
|
-
.describe('Authorise overwriting existing shared-region data when writing sprites 128-255 (ADR-0004). Also settable as allowMapOverlap in picopilot.json.'),
|
|
154
|
+
.optional()
|
|
155
|
+
.describe('Authorise overwriting existing shared-region data when writing sprites 128-255 (ADR-0004). Also settable as allowMapOverlap in picopilot.json. Default false.'),
|
|
153
156
|
}),
|
|
154
157
|
output: z.object({
|
|
155
158
|
sprite: z.number().describe('The sprite index that was written.'),
|
|
@@ -176,7 +179,7 @@ function buildGfxGroup(shrinkoFactory) {
|
|
|
176
179
|
},
|
|
177
180
|
},
|
|
178
181
|
],
|
|
179
|
-
run({ args, options, error, ok }) {
|
|
182
|
+
run({ args, options, error, ok, var: vars }) {
|
|
180
183
|
const cartPath = resolveCart(args.cart);
|
|
181
184
|
// Decode the incoming grid FIRST: a malformed grid is a caller error and
|
|
182
185
|
// must never touch the cart. (No bytes change on a bad grid.)
|
|
@@ -203,8 +206,11 @@ function buildGfxGroup(shrinkoFactory) {
|
|
|
203
206
|
// (the shared-bank bytes at risk), NOT __map__ (ADR-0004). The flag and
|
|
204
207
|
// the picopilot.json config both feed `options.allowMapOverlap` (incur
|
|
205
208
|
// resolves argv > config > default), so both authorisation paths converge
|
|
206
|
-
// here.
|
|
207
|
-
|
|
209
|
+
// here. Under `--mcp` incur loads no config, so the picopilot.json value
|
|
210
|
+
// comes from the `mcpConfig` var instead.
|
|
211
|
+
const allowMapOverlap = options.allowMapOverlap ??
|
|
212
|
+
mcpConfigOption(vars, ['gfx', 'set'], 'allowMapOverlap') === true;
|
|
213
|
+
const decision = decideOverlap(sheet, args.sprite, allowMapOverlap);
|
|
208
214
|
if (decision.kind === 'refused') {
|
|
209
215
|
// The silent-corruption guard: REFUSE and DO NOT write. The cart file is
|
|
210
216
|
// never opened for writing on this path, so the sprite's __gfx__ bytes
|
package/dist/commands/gfx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gfx.js","sourceRoot":"","sources":["../../src/commands/gfx.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gfx.js","sourceRoot":"","sources":["../../src/commands/gfx.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,11 +38,47 @@ export interface ShellAdapterFactoryDeps {
|
|
|
38
38
|
*/
|
|
39
39
|
export declare function createShellAdapterFactory(deps?: ShellAdapterFactoryDeps): Pico8AdapterFactory;
|
|
40
40
|
/**
|
|
41
|
-
* The display
|
|
42
|
-
*
|
|
43
|
-
*
|
|
41
|
+
* The `display` option of the commands that use the display mode (`run`,
|
|
42
|
+
* `audio record`, `audio render`, `doctor`). A per-command option, not an incur
|
|
43
|
+
* global, because incur's MCP transport passes no globals: as an option it is
|
|
44
|
+
* also an argument of the MCP tool. Unset = the invocation-level value.
|
|
45
|
+
*/
|
|
46
|
+
export declare const DISPLAY_OPTION: z.ZodOptional<z.ZodEnum<{
|
|
47
|
+
auto: "auto";
|
|
48
|
+
xvfb: "xvfb";
|
|
49
|
+
native: "native";
|
|
50
|
+
}>>;
|
|
51
|
+
/**
|
|
52
|
+
* The display mode the root middleware in `createCli` resolved for this
|
|
53
|
+
* invocation (top-level `--display` > PICOPILOT_DISPLAY > picopilot.json >
|
|
54
|
+
* auto). A command mounted on a bare CLI (some tests) has no var and gets the
|
|
55
|
+
* default.
|
|
44
56
|
*/
|
|
45
57
|
export declare function displayModeOf(vars: unknown): DisplayMode;
|
|
58
|
+
/**
|
|
59
|
+
* The display mode a command uses: its own `display` option (a per-call MCP
|
|
60
|
+
* argument) wins, else the invocation-level value. An invalid invocation-level
|
|
61
|
+
* value (a typo in PICOPILOT_DISPLAY, say) is an `invalid-display-mode` error
|
|
62
|
+
* here, so only the commands that use the mode fail on it.
|
|
63
|
+
*/
|
|
64
|
+
export declare function resolveCommandDisplay(option: DisplayMode | undefined, vars: unknown): {
|
|
65
|
+
ok: true;
|
|
66
|
+
mode: DisplayMode;
|
|
67
|
+
} | {
|
|
68
|
+
ok: false;
|
|
69
|
+
error: {
|
|
70
|
+
code: 'invalid-display-mode';
|
|
71
|
+
message: string;
|
|
72
|
+
exitCode: number;
|
|
73
|
+
};
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* Under `--mcp`, incur loads no config file, so picopilot loads picopilot.json
|
|
77
|
+
* itself and hands the tree to commands as the `mcpConfig` var. A command whose
|
|
78
|
+
* option can come from the config reads its fallback here (CLI runs get it from
|
|
79
|
+
* incur as the option's default, so this is undefined there).
|
|
80
|
+
*/
|
|
81
|
+
export declare function mcpConfigOption(vars: unknown, commandPath: readonly string[], key: string): unknown;
|
|
46
82
|
/**
|
|
47
83
|
* The `error(...)` payload for a `display-unavailable` result (ADR-0017): the
|
|
48
84
|
* session needs a display, there is none, and no Xvfb is installed to provide a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pico8-env.d.ts","sourceRoot":"","sources":["../../src/commands/pico8-env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,OAAO,CAAC;AACxB,OAAO,
|
|
1
|
+
{"version":3,"file":"pico8-env.d.ts","sourceRoot":"","sources":["../../src/commands/pico8-env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,OAAO,CAAC;AACxB,OAAO,EAGN,KAAK,WAAW,EAEhB,KAAK,YAAY,EAGjB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,MAAM,0BAA0B,CAAC;AAElC;;;;;;GAMG;AACH,eAAO,MAAM,SAAS;;;iBAMpB,CAAC;AAEH,qEAAqE;AACrE,MAAM,WAAW,mBAAmB;IACnC,gEAAgE;IAChE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,CACjC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,OAAO,CAAC,EAAE,mBAAmB,KACzB,YAAY,CAAC;AAElB,gFAAgF;AAChF,MAAM,WAAW,uBAAuB;IACvC,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACvC,0DAA0D;IAC1D,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;IAC7B,sDAAsD;IACtD,QAAQ,CAAC,cAAc,CAAC,EAAE,kBAAkB,CAAC;CAC7C;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACxC,IAAI,GAAE,uBAA4B,GAChC,mBAAmB,CAWrB;AAED;;;;;GAKG;AACH,eAAO,MAAM,cAAc;;;;GAKzB,CAAC;AAEH;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW,CAMxD;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACpC,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,IAAI,EAAE,OAAO,GAEX;IAAC,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,WAAW,CAAA;CAAC,GAC7B;IACA,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE;QAAC,IAAI,EAAE,sBAAsB,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAC;CACxE,CAaH;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC9B,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,GAAG,EAAE,MAAM,GACT,OAAO,CAYT;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACtC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC;;;;;;;;;;;EAiBxC;AAED,0FAA0F;AAC1F,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB;;;;EAMA"}
|