humanish 0.58.0 → 0.59.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/dist/first-run-path.d.ts +39 -0
- package/dist/first-run-path.js +104 -0
- package/dist/first-run-path.js.map +1 -0
- package/dist/init-templates.d.ts +8 -0
- package/dist/init-templates.js +69 -0
- package/dist/init-templates.js.map +1 -1
- package/dist/init.d.ts +7 -0
- package/dist/init.js +62 -3
- package/dist/init.js.map +1 -1
- package/dist/program.js +21 -2
- package/dist/program.js.map +1 -1
- package/dist/tui-app.js +110 -110
- package/dist/tui-contract.d.ts +6 -0
- package/dist/tui-contract.js.map +1 -1
- package/docs/contracts/schemas.md +1 -1
- package/docs/goals/current.md +1 -1
- package/docs/ramp/README.md +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export interface FirstRunEnvironment {
|
|
2
|
+
/** A sandbox to run the study in. Nothing live happens without it. */
|
|
3
|
+
hasE2bKey: boolean;
|
|
4
|
+
/** A provider API key for the model. */
|
|
5
|
+
hasProviderKey: boolean;
|
|
6
|
+
/** A coding agent already signed in locally — Codex or Claude Code. */
|
|
7
|
+
localAgents: readonly string[];
|
|
8
|
+
}
|
|
9
|
+
export type FirstRunActor = "openai-computer-use" | "local-agent";
|
|
10
|
+
/**
|
|
11
|
+
* Which brain the starter live lab should be written for. A machine with a signed-in coding agent
|
|
12
|
+
* and no provider key can still do a real live run; writing the lab for the credential the
|
|
13
|
+
* operator DOESN'T have is how a starter file becomes homework.
|
|
14
|
+
*/
|
|
15
|
+
export declare function starterActorFor(env: FirstRunEnvironment): FirstRunActor;
|
|
16
|
+
export interface FirstRunStep {
|
|
17
|
+
/** The exact command to run. */
|
|
18
|
+
command: string;
|
|
19
|
+
/** Why this one, in the register the rest of the CLI uses. */
|
|
20
|
+
why: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The next one or two commands, in order. Deliberately SHORT: a list of twelve options is the same
|
|
24
|
+
* as no guidance, and the reader here has just been handed twenty files.
|
|
25
|
+
*/
|
|
26
|
+
export declare function firstRunSteps(env: FirstRunEnvironment): FirstRunStep[];
|
|
27
|
+
/** The block init prints after its changes. */
|
|
28
|
+
export declare function firstRunGuidance(env: FirstRunEnvironment): string[];
|
|
29
|
+
/** Lets init recognise its own section without rewriting a file someone else wrote. */
|
|
30
|
+
export declare const AGENTS_SECTION_MARKER = "<!-- humanish:agents-guide -->";
|
|
31
|
+
/**
|
|
32
|
+
* What the NEXT coding agent needs to know about humanish in this project.
|
|
33
|
+
*
|
|
34
|
+
* AGENTS.md is the cross-vendor convention (agents.md) that Codex, Claude Code, Cursor and others
|
|
35
|
+
* read on arrival. Increasingly the thing that ran `humanish init` was itself an agent working for
|
|
36
|
+
* someone, and the agent that shows up tomorrow finds a `humanish/` directory with no idea what it
|
|
37
|
+
* is for. Deliberately SHORT and command-first: an agent acts on commands, not on prose.
|
|
38
|
+
*/
|
|
39
|
+
export declare function agentsSection(): string;
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
// What a person — or the coding agent setting humanish up for them — should do NEXT.
|
|
2
|
+
//
|
|
3
|
+
// WHY: `humanish init` wrote twenty files and stopped. The only lab that could actually run was a
|
|
4
|
+
// $0 dry run; the two live ones were templates with `your-org/your-app` in them, so the first live
|
|
5
|
+
// run a newcomer tried could not succeed no matter what credentials they had. Three independent
|
|
6
|
+
// sources reached the same place — a participant in our own TUI study walked to the Start row and
|
|
7
|
+
// found a placeholder URL, an adoption review concluded "the funnel is broken at the first live
|
|
8
|
+
// run", and the release-gate participant said, unprompted, "validate one paid live study before
|
|
9
|
+
// committing" (#505).
|
|
10
|
+
//
|
|
11
|
+
// The fix is not more surface. Increasingly the thing running `init` is a coding agent acting for
|
|
12
|
+
// someone, and an agent reads stdout and does what it says. So init ends by naming the next
|
|
13
|
+
// command — and names the one that will actually work ON THIS MACHINE, because a next step that
|
|
14
|
+
// fails is worse than none.
|
|
15
|
+
/**
|
|
16
|
+
* Which brain the starter live lab should be written for. A machine with a signed-in coding agent
|
|
17
|
+
* and no provider key can still do a real live run; writing the lab for the credential the
|
|
18
|
+
* operator DOESN'T have is how a starter file becomes homework.
|
|
19
|
+
*/
|
|
20
|
+
export function starterActorFor(env) {
|
|
21
|
+
if (!env.hasProviderKey && env.localAgents.length > 0)
|
|
22
|
+
return "local-agent";
|
|
23
|
+
return "openai-computer-use";
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* The next one or two commands, in order. Deliberately SHORT: a list of twelve options is the same
|
|
27
|
+
* as no guidance, and the reader here has just been handed twenty files.
|
|
28
|
+
*/
|
|
29
|
+
export function firstRunSteps(env) {
|
|
30
|
+
const steps = [
|
|
31
|
+
{
|
|
32
|
+
command: "humanish run first-run",
|
|
33
|
+
why: "a synthetic study with no keys and no spend — see the shape of the evidence in about a minute"
|
|
34
|
+
}
|
|
35
|
+
];
|
|
36
|
+
if (!env.hasE2bKey) {
|
|
37
|
+
steps.push({
|
|
38
|
+
command: "humanish keys set e2b",
|
|
39
|
+
why: "a live study needs a sandbox to run in; this is the only credential it always needs"
|
|
40
|
+
});
|
|
41
|
+
return steps;
|
|
42
|
+
}
|
|
43
|
+
if (env.hasProviderKey || env.localAgents.length > 0) {
|
|
44
|
+
const brain = env.hasProviderKey
|
|
45
|
+
? "your provider key"
|
|
46
|
+
: `${env.localAgents[0]} (already signed in — no API key needed)`;
|
|
47
|
+
steps.push({
|
|
48
|
+
command: "humanish run try-live",
|
|
49
|
+
why: `a REAL study: one participant drives a real app in a hosted desktop, using ${brain}`
|
|
50
|
+
});
|
|
51
|
+
return steps;
|
|
52
|
+
}
|
|
53
|
+
steps.push({
|
|
54
|
+
command: "humanish keys set openai",
|
|
55
|
+
why: "a live study needs a model to think with — or sign in to Codex or Claude Code and humanish will use that instead"
|
|
56
|
+
});
|
|
57
|
+
return steps;
|
|
58
|
+
}
|
|
59
|
+
/** The block init prints after its changes. */
|
|
60
|
+
export function firstRunGuidance(env) {
|
|
61
|
+
const steps = firstRunSteps(env);
|
|
62
|
+
return [
|
|
63
|
+
"",
|
|
64
|
+
"next:",
|
|
65
|
+
...steps.flatMap((step) => [` ${step.command}`, ` ${step.why}`])
|
|
66
|
+
];
|
|
67
|
+
}
|
|
68
|
+
/** Lets init recognise its own section without rewriting a file someone else wrote. */
|
|
69
|
+
export const AGENTS_SECTION_MARKER = "<!-- humanish:agents-guide -->";
|
|
70
|
+
/**
|
|
71
|
+
* What the NEXT coding agent needs to know about humanish in this project.
|
|
72
|
+
*
|
|
73
|
+
* AGENTS.md is the cross-vendor convention (agents.md) that Codex, Claude Code, Cursor and others
|
|
74
|
+
* read on arrival. Increasingly the thing that ran `humanish init` was itself an agent working for
|
|
75
|
+
* someone, and the agent that shows up tomorrow finds a `humanish/` directory with no idea what it
|
|
76
|
+
* is for. Deliberately SHORT and command-first: an agent acts on commands, not on prose.
|
|
77
|
+
*/
|
|
78
|
+
export function agentsSection() {
|
|
79
|
+
return [
|
|
80
|
+
"",
|
|
81
|
+
`## humanish ${AGENTS_SECTION_MARKER}`,
|
|
82
|
+
"",
|
|
83
|
+
"This project uses humanish: synthetic participants use the product and leave evidence.",
|
|
84
|
+
"",
|
|
85
|
+
"```bash",
|
|
86
|
+
"humanish doctor # what is configured, and what a live run still needs",
|
|
87
|
+
"humanish lab list --json # the studies in this project",
|
|
88
|
+
"humanish run first-run # a synthetic study: no keys, no spend",
|
|
89
|
+
"humanish run try-live # a REAL study against a demo app (needs E2B_API_KEY)",
|
|
90
|
+
"humanish verify --run latest --json # is the evidence share-safe",
|
|
91
|
+
"```",
|
|
92
|
+
"",
|
|
93
|
+
"- Studies are declared in `humanish/labs/*.yaml`. Edit `try-live.yaml`'s `subject` to point at",
|
|
94
|
+
" this project's own app once you have seen a run work.",
|
|
95
|
+
"- Evidence lands in gitignored `.humanish/runs/`. Never commit it, and never paste raw run",
|
|
96
|
+
" bundles into an issue — `humanish feedback issue` produces a redacted, share-safe draft.",
|
|
97
|
+
"- `humanish tui` is a HUMAN surface and refuses to run in an agent session. Use the `--json`",
|
|
98
|
+
" commands above instead, and tell the person you are working for that `humanish tui` exists.",
|
|
99
|
+
"- A live run spends money. `execution.caps.maxUsd` in each lab is a fail-closed ceiling; do not",
|
|
100
|
+
" raise it without asking the person you are working for.",
|
|
101
|
+
""
|
|
102
|
+
].join("\n");
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=first-run-path.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"first-run-path.js","sourceRoot":"","sources":["../src/first-run-path.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,EAAE;AACF,kGAAkG;AAClG,mGAAmG;AACnG,gGAAgG;AAChG,kGAAkG;AAClG,gGAAgG;AAChG,gGAAgG;AAChG,sBAAsB;AACtB,EAAE;AACF,kGAAkG;AAClG,4FAA4F;AAC5F,gGAAgG;AAChG,4BAA4B;AAa5B;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,GAAwB;IACtD,IAAI,CAAC,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,aAAa,CAAC;IAC5E,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AASD;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,GAAwB;IACpD,MAAM,KAAK,GAAmB;QAC5B;YACE,OAAO,EAAE,wBAAwB;YACjC,GAAG,EAAE,+FAA+F;SACrG;KACF,CAAC;IAEF,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC;YACT,OAAO,EAAE,uBAAuB;YAChC,GAAG,EAAE,qFAAqF;SAC3F,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,GAAG,CAAC,cAAc;YAC9B,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,0CAA0C,CAAC;QACpE,KAAK,CAAC,IAAI,CAAC;YACT,OAAO,EAAE,uBAAuB;YAChC,GAAG,EAAE,8EAA8E,KAAK,EAAE;SAC3F,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,IAAI,CAAC;QACT,OAAO,EAAE,0BAA0B;QACnC,GAAG,EAAE,kHAAkH;KACxH,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,gBAAgB,CAAC,GAAwB;IACvD,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IACjC,OAAO;QACL,EAAE;QACF,OAAO;QACP,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;KACvE,CAAC;AACJ,CAAC;AAED,uFAAuF;AACvF,MAAM,CAAC,MAAM,qBAAqB,GAAG,gCAAgC,CAAC;AAEtE;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO;QACL,EAAE;QACF,eAAe,qBAAqB,EAAE;QACtC,EAAE;QACF,wFAAwF;QACxF,EAAE;QACF,SAAS;QACT,kFAAkF;QAClF,0DAA0D;QAC1D,mEAAmE;QACnE,kFAAkF;QAClF,oEAAoE;QACpE,KAAK;QACL,EAAE;QACF,gGAAgG;QAChG,yDAAyD;QACzD,4FAA4F;QAC5F,4FAA4F;QAC5F,8FAA8F;QAC9F,+FAA+F;QAC/F,iGAAiG;QACjG,2DAA2D;QAC3D,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
|
package/dist/init-templates.d.ts
CHANGED
|
@@ -10,3 +10,11 @@ export interface RuntimeDirectory {
|
|
|
10
10
|
export declare const starterFiles: StarterFile[];
|
|
11
11
|
export declare const runtimeDirectories: RuntimeDirectory[];
|
|
12
12
|
export declare const humanishScripts: Record<string, string>;
|
|
13
|
+
/**
|
|
14
|
+
* The starter files, with the live lab written for the brain this machine can use.
|
|
15
|
+
*
|
|
16
|
+
* `local-agent` is not a variant of the lab so much as a different participant: on a machine with
|
|
17
|
+
* a signed-in Codex and no provider key, the study runs with the operator's own agent and needs
|
|
18
|
+
* only E2B. Writing the other one there would hand someone homework instead of a first run.
|
|
19
|
+
*/
|
|
20
|
+
export declare function starterFilesFor(actor: "openai-computer-use" | "local-agent"): StarterFile[];
|
package/dist/init-templates.js
CHANGED
|
@@ -132,6 +132,54 @@ scenario:
|
|
|
132
132
|
mode: dry-run
|
|
133
133
|
defaults:
|
|
134
134
|
open: true
|
|
135
|
+
`
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
path: "humanish/labs/try-live.yaml",
|
|
139
|
+
plane: "source",
|
|
140
|
+
contents: `schema: humanish.lab.v2
|
|
141
|
+
id: try-live
|
|
142
|
+
title: Your first REAL study — one participant, a real app, a hosted desktop
|
|
143
|
+
description: >-
|
|
144
|
+
This lab runs live out of the box, on purpose. Every other starter file here is a template you
|
|
145
|
+
have to fill in first, and a first live run that cannot succeed is where most people stop.
|
|
146
|
+
THE SUBJECT IS A DEMO, NOT YOUR APP: it clones drawDB, a real public open-source diagram editor,
|
|
147
|
+
and serves it inside the sandbox. That is what makes this runnable with nothing to configure.
|
|
148
|
+
Once you have watched it work, point subject at your own app (see humanish/labs/cua-browser.yaml
|
|
149
|
+
for the shape) — that is the study you actually want.
|
|
150
|
+
WHAT IT COSTS: one participant, one small task, a fail-closed cap of two dollars. It will not
|
|
151
|
+
quietly become expensive.
|
|
152
|
+
WHAT A GOOD RESULT LOOKS LIKE: not necessarily a pass. A participant who gets stuck and says so
|
|
153
|
+
is the most useful thing this tool produces — humanish will refuse to call that a credible pass,
|
|
154
|
+
on purpose, and the friction they describe is the finding. A first run that ends in "I could not
|
|
155
|
+
do it, and here is where I got lost" worked exactly as intended.
|
|
156
|
+
subject:
|
|
157
|
+
source: clone
|
|
158
|
+
repos:
|
|
159
|
+
- drawdb-io/drawdb
|
|
160
|
+
clone:
|
|
161
|
+
depth: 1
|
|
162
|
+
serve:
|
|
163
|
+
# Plain npm — humanish provides the Node runtime the stock desktop image does not ship.
|
|
164
|
+
install: npm install --no-audit --no-fund
|
|
165
|
+
build: npm run build
|
|
166
|
+
start: npx vite preview --host 127.0.0.1 --port 3000
|
|
167
|
+
url: http://127.0.0.1:3000/
|
|
168
|
+
actors:
|
|
169
|
+
- type: openai-computer-use
|
|
170
|
+
persona: synthetic-new-user
|
|
171
|
+
mission: >-
|
|
172
|
+
You have never seen this diagram tool before. Add two tables and give them meaningful names,
|
|
173
|
+
then stop and say what you did, what confused you, and where you hesitated.
|
|
174
|
+
execution:
|
|
175
|
+
target: e2b-desktop
|
|
176
|
+
timeoutMs: 600000
|
|
177
|
+
caps:
|
|
178
|
+
maxUsd: 2 # fail-closed: the run aborts rather than overspending
|
|
179
|
+
scenario:
|
|
180
|
+
mode: live # the point of this lab — the others start as dry-run
|
|
181
|
+
defaults:
|
|
182
|
+
open: true
|
|
135
183
|
`
|
|
136
184
|
},
|
|
137
185
|
{
|
|
@@ -431,4 +479,25 @@ export const humanishScripts = {
|
|
|
431
479
|
"humanish:watch:ci": "humanish watch --json --no-open",
|
|
432
480
|
"humanish:verify": "humanish verify"
|
|
433
481
|
};
|
|
482
|
+
/**
|
|
483
|
+
* The starter files, with the live lab written for the brain this machine can use.
|
|
484
|
+
*
|
|
485
|
+
* `local-agent` is not a variant of the lab so much as a different participant: on a machine with
|
|
486
|
+
* a signed-in Codex and no provider key, the study runs with the operator's own agent and needs
|
|
487
|
+
* only E2B. Writing the other one there would hand someone homework instead of a first run.
|
|
488
|
+
*/
|
|
489
|
+
export function starterFilesFor(actor) {
|
|
490
|
+
if (actor === "openai-computer-use")
|
|
491
|
+
return starterFiles;
|
|
492
|
+
return starterFiles.map((file) => {
|
|
493
|
+
if (file.path !== "humanish/labs/try-live.yaml")
|
|
494
|
+
return file;
|
|
495
|
+
return {
|
|
496
|
+
...file,
|
|
497
|
+
contents: file.contents.replace(" - type: openai-computer-use\n", " # Your machine has a coding agent signed in, so this study uses it: no provider API key,\n"
|
|
498
|
+
+ " # only E2B. Swap to `type: openai-computer-use` if you would rather use a provider key.\n"
|
|
499
|
+
+ " - type: local-agent\n")
|
|
500
|
+
};
|
|
501
|
+
});
|
|
502
|
+
}
|
|
434
503
|
//# sourceMappingURL=init-templates.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-templates.js","sourceRoot":"","sources":["../src/init-templates.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init-templates.js","sourceRoot":"","sources":["../src/init-templates.ts"],"names":[],"mappings":"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"}
|
package/dist/init.d.ts
CHANGED
|
@@ -3,6 +3,8 @@ export interface InitOptions {
|
|
|
3
3
|
cwd: string;
|
|
4
4
|
dryRun?: boolean;
|
|
5
5
|
yes?: boolean;
|
|
6
|
+
/** Injected so a test can decide what credentials this machine appears to have. */
|
|
7
|
+
env?: NodeJS.ProcessEnv;
|
|
6
8
|
}
|
|
7
9
|
export type InitMode = "dry-run" | "applied" | "needs-confirmation";
|
|
8
10
|
export interface InitChange {
|
|
@@ -18,6 +20,11 @@ export interface InitResult {
|
|
|
18
20
|
cwd: string;
|
|
19
21
|
changes: InitChange[];
|
|
20
22
|
warnings: string[];
|
|
23
|
+
/**
|
|
24
|
+
* The next one or two commands, already resolved against THIS machine's credentials. Present on
|
|
25
|
+
* an applied init; absent on a dry-run or a failure, where there is no "next" yet.
|
|
26
|
+
*/
|
|
27
|
+
nextSteps?: string[];
|
|
21
28
|
error?: {
|
|
22
29
|
code: "HUMANISH_CONFIRMATION_REQUIRED" | "HUMANISH_INVALID_CWD" | "HUMANISH_INVALID_PACKAGE_JSON" | "HUMANISH_UNSAFE_PROJECT_PATH";
|
|
23
30
|
message: string;
|
package/dist/init.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { lstat, realpath, stat } from "node:fs/promises";
|
|
2
2
|
import path from "node:path";
|
|
3
|
-
import {
|
|
3
|
+
import { AGENTS_SECTION_MARKER, agentsSection, firstRunGuidance, starterActorFor } from "./first-run-path.js";
|
|
4
|
+
import { detectLocalAgents } from "./local-agent-cli.js";
|
|
5
|
+
import { humanishScripts, runtimeDirectories, starterFiles, starterFilesFor } from "./init-templates.js";
|
|
4
6
|
import { assertPreparedSelectedOutputDirectory, prepareContainedOutputDirectory, prepareSelectedOutputDirectory, readContainedRegularFile, writeContainedOutputFile } from "./selected-output-paths.js";
|
|
5
7
|
export const INIT_RESPONSE_SCHEMA = "humanish.init-result.v1";
|
|
6
8
|
export async function runInit(options) {
|
|
@@ -36,7 +38,44 @@ export async function runInit(options) {
|
|
|
36
38
|
error: initialPathCheck
|
|
37
39
|
};
|
|
38
40
|
}
|
|
39
|
-
for
|
|
41
|
+
// Leave instructions for the NEXT agent. AGENTS.md is the cross-vendor convention (agents.md) —
|
|
42
|
+
// Codex, Claude Code, Cursor, Aider and others read it — and increasingly the thing that runs
|
|
43
|
+
// `humanish init` is a coding agent doing setup on someone's behalf. Without this, the agent
|
|
44
|
+
// that arrives tomorrow finds a humanish/ directory and no idea what to do with it.
|
|
45
|
+
//
|
|
46
|
+
// APPEND-ONLY and idempotent: an existing AGENTS.md is a file someone wrote, so humanish adds its
|
|
47
|
+
// own section once and never rewrites theirs.
|
|
48
|
+
{
|
|
49
|
+
const agentsPath = "AGENTS.md";
|
|
50
|
+
const existingAgents = await readTextIfExists(preparedProjectRoot, agentsPath);
|
|
51
|
+
const section = agentsSection();
|
|
52
|
+
if (existingAgents === null) {
|
|
53
|
+
changes.push({ path: agentsPath, action: "create", target: "source", reason: "how a coding agent runs humanish here" });
|
|
54
|
+
writes.push({
|
|
55
|
+
absolutePath: path.join(cwd, agentsPath),
|
|
56
|
+
relativePath: agentsPath,
|
|
57
|
+
contents: `# AGENTS.md\n${section}`,
|
|
58
|
+
target: "source"
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
else if (existingAgents.includes(AGENTS_SECTION_MARKER)) {
|
|
62
|
+
changes.push({ path: agentsPath, action: "skip", target: "source", reason: "humanish section already present" });
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
changes.push({ path: agentsPath, action: "update", target: "source", reason: "append how a coding agent runs humanish" });
|
|
66
|
+
writes.push({
|
|
67
|
+
absolutePath: path.join(cwd, agentsPath),
|
|
68
|
+
relativePath: agentsPath,
|
|
69
|
+
contents: `${existingAgents.replace(/\s*$/, "")}\n${section}`,
|
|
70
|
+
target: "source"
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
// The starter live lab is written for the brain this machine can actually use. Shipping it as
|
|
75
|
+
// openai-computer-use on a machine with no provider key but a signed-in Codex would hand someone
|
|
76
|
+
// a file that asks for a credential they were just told they do not need (#505).
|
|
77
|
+
const starterActor = starterActorFor(await firstRunEnvironment(options.env ?? process.env));
|
|
78
|
+
for (const file of starterFilesFor(starterActor)) {
|
|
40
79
|
const absolutePath = path.join(cwd, file.path);
|
|
41
80
|
const existing = await readTextIfExists(preparedProjectRoot, file.path);
|
|
42
81
|
if (existing === null) {
|
|
@@ -147,7 +186,27 @@ export async function runInit(options) {
|
|
|
147
186
|
mode,
|
|
148
187
|
cwd: requestedCwd,
|
|
149
188
|
changes,
|
|
150
|
-
warnings
|
|
189
|
+
warnings,
|
|
190
|
+
// Resolved against THIS machine, because a next step that cannot work is worse than none.
|
|
191
|
+
...(mode === "applied" ? { nextSteps: await resolveFirstRunGuidance(options.env ?? process.env) } : {})
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* What to tell the operator (or the agent acting for them) to do next. Credential PRESENCE only —
|
|
196
|
+
* no value is read, and the local-agent check asks whether a credential file exists, never what is
|
|
197
|
+
* in it.
|
|
198
|
+
*/
|
|
199
|
+
async function resolveFirstRunGuidance(env) {
|
|
200
|
+
return firstRunGuidance(await firstRunEnvironment(env));
|
|
201
|
+
}
|
|
202
|
+
/** Credential PRESENCE only. No value is read, and the local-agent check asks whether a file
|
|
203
|
+
* exists, never what is in it. */
|
|
204
|
+
async function firstRunEnvironment(env) {
|
|
205
|
+
const agents = await detectLocalAgents().catch(() => []);
|
|
206
|
+
return {
|
|
207
|
+
hasE2bKey: (env.E2B_API_KEY ?? "").trim().length > 0,
|
|
208
|
+
hasProviderKey: (env.OPENAI_API_KEY ?? "").trim().length > 0,
|
|
209
|
+
localAgents: agents.filter((agent) => agent.credentialsPresent).map((agent) => agent.label)
|
|
151
210
|
};
|
|
152
211
|
}
|
|
153
212
|
async function validateInitProjectPaths(cwd) {
|
package/dist/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
package/dist/program.js
CHANGED
|
@@ -27,7 +27,7 @@ import { reclaimRunSandboxes } from "./reclaim.js";
|
|
|
27
27
|
import { RunIndexCache, readRunIndex } from "./run-index.js";
|
|
28
28
|
import { readLabSummary } from "./lab-summary.js";
|
|
29
29
|
import { readProjectState } from "./tui-project.js";
|
|
30
|
-
import { openObserverArtifact, stopRun } from "./tui-actions.js";
|
|
30
|
+
import { openObserverArtifact, stopRun, TUI_ACTION_SCHEMA } from "./tui-actions.js";
|
|
31
31
|
import { readRunDetail } from "./run-detail.js";
|
|
32
32
|
import { launchRun, readLaunchLogTail } from "./tui-launch.js";
|
|
33
33
|
import { TUI_MIN_NODE_MAJOR, nodeSupportsTui, tuiBundleUrl } from "./tui-contract.js";
|
|
@@ -411,7 +411,21 @@ function registerTuiCommand(parent, io) {
|
|
|
411
411
|
readProjectState,
|
|
412
412
|
openObserver: openObserverArtifact,
|
|
413
413
|
reclaimRun: (target, runId) => reclaimRunSandboxes(target, runId),
|
|
414
|
-
stopRun
|
|
414
|
+
stopRun,
|
|
415
|
+
initProject: async (target) => {
|
|
416
|
+
const result = await runInit({ cwd: target, yes: true });
|
|
417
|
+
return result.ok
|
|
418
|
+
? {
|
|
419
|
+
schema: TUI_ACTION_SCHEMA,
|
|
420
|
+
ok: true,
|
|
421
|
+
message: `set up humanish here — ${result.changes.filter((change) => change.action !== "skip").length} files written`
|
|
422
|
+
}
|
|
423
|
+
: {
|
|
424
|
+
schema: TUI_ACTION_SCHEMA,
|
|
425
|
+
ok: false,
|
|
426
|
+
message: result.error?.message ?? "humanish init could not set this directory up"
|
|
427
|
+
};
|
|
428
|
+
}
|
|
415
429
|
},
|
|
416
430
|
stdin,
|
|
417
431
|
stdout
|
|
@@ -3247,6 +3261,11 @@ function formatInitHuman(result) {
|
|
|
3247
3261
|
if (result.mode === "needs-confirmation") {
|
|
3248
3262
|
lines.push("", "Run with --dry-run --json to inspect or --yes to apply.");
|
|
3249
3263
|
}
|
|
3264
|
+
else if (result.ok && result.nextSteps !== undefined) {
|
|
3265
|
+
// Twenty files and no next step is where the funnel died (#505). Increasingly the reader here
|
|
3266
|
+
// is a coding agent doing setup for someone, and an agent does what stdout tells it to.
|
|
3267
|
+
lines.push(...result.nextSteps);
|
|
3268
|
+
}
|
|
3250
3269
|
return `${lines.join("\n")}\n`;
|
|
3251
3270
|
}
|
|
3252
3271
|
function formatInitChange(change) {
|