@openclaw-cloud/agent-controller 3.0.0-beta.25 → 3.0.0-beta.26
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/config.d.ts +1 -1
- package/dist/config.js +1 -1
- package/dist/providers/claude-code/index.d.ts +1 -1
- package/dist/providers/claude-code/settings-writer.d.ts +4 -2
- package/dist/providers/claude-code/settings-writer.js +6 -2
- package/dist/providers/claude-code/settings-writer.js.map +1 -1
- package/dist/utils/apply-config.js +1 -1
- package/package.json +1 -1
package/dist/config.d.ts
CHANGED
|
@@ -33,7 +33,7 @@ export declare const config: {
|
|
|
33
33
|
readonly claudeCodeOauthToken: string | undefined;
|
|
34
34
|
/** Workspace directory for the claude-code provider */
|
|
35
35
|
readonly claudeWorkspaceDir: string;
|
|
36
|
-
/** Optional
|
|
36
|
+
/** Optional AGENTS.md content for the claude-code workspace (set by bootstrap). */
|
|
37
37
|
readonly claudeMdContent: string | undefined;
|
|
38
38
|
/** Bearer token the openclaw Slack relay client must present (defense-in-depth on loopback). */
|
|
39
39
|
readonly slackRelayAuthToken: string | undefined;
|
package/dist/config.js
CHANGED
|
@@ -88,7 +88,7 @@ export const config = {
|
|
|
88
88
|
get claudeWorkspaceDir() {
|
|
89
89
|
return process.env.CLAUDE_WORKSPACE_DIR ?? '/home/ubuntu/.claude/workspace';
|
|
90
90
|
},
|
|
91
|
-
/** Optional
|
|
91
|
+
/** Optional AGENTS.md content for the claude-code workspace (set by bootstrap). */
|
|
92
92
|
get claudeMdContent() {
|
|
93
93
|
return process.env.CLAUDE_MD_CONTENT?.trim() || undefined;
|
|
94
94
|
},
|
|
@@ -6,7 +6,7 @@ export interface ClaudeCodeProviderConfig {
|
|
|
6
6
|
anthropicApiKey?: string;
|
|
7
7
|
anthropicAuthToken?: string;
|
|
8
8
|
claudeCodeOauthToken?: string;
|
|
9
|
-
/** Content for
|
|
9
|
+
/** Content for AGENTS.md in the workspace (persona / bootstrap). */
|
|
10
10
|
claudeMdContent?: string;
|
|
11
11
|
/** Backend URL for openclaw-backend MCP entry. */
|
|
12
12
|
backendUrl?: string;
|
|
@@ -9,7 +9,7 @@ export interface ClaudeCodeSettingsContext {
|
|
|
9
9
|
backendUrl?: string;
|
|
10
10
|
/** Bearer token for the openclaw-backend MCP server */
|
|
11
11
|
agentToken?: string;
|
|
12
|
-
/** Content of
|
|
12
|
+
/** Content of AGENTS.md to write into the workspace (persona / bootstrap) */
|
|
13
13
|
claudeMdContent?: string;
|
|
14
14
|
/** Port of the local agent-memory MCP server (defaults to 3457). */
|
|
15
15
|
memoryMcpPort?: number;
|
|
@@ -24,7 +24,9 @@ export interface ClaudeCodeSettingsContext {
|
|
|
24
24
|
channelSocketPath?: string;
|
|
25
25
|
}
|
|
26
26
|
/**
|
|
27
|
-
* Write `.claude/settings.json`, `.mcp.json`, and `
|
|
27
|
+
* Write `.claude/settings.json`, `.mcp.json`, and `AGENTS.md` into the workspace.
|
|
28
|
+
* When `AGENTS.md` is written, a stale `CLAUDE.md` from older controller versions
|
|
29
|
+
* is removed — Claude Code would otherwise load the persona twice.
|
|
28
30
|
*
|
|
29
31
|
* Idempotent — overwrites each call. The permissions block and the OAuth-vs-
|
|
30
32
|
* API-key branch come from `buildClaudeSettings()`, shared with
|
|
@@ -5,7 +5,9 @@ import { getAgentControllerBinPath } from '../../utils/agent-controller-bin.js';
|
|
|
5
5
|
import { buildClaudeSettings, classifyAnthropicAuth } from '../../utils/anthropic-auth.js';
|
|
6
6
|
import { logCollector } from '../../connection.js';
|
|
7
7
|
/**
|
|
8
|
-
* Write `.claude/settings.json`, `.mcp.json`, and `
|
|
8
|
+
* Write `.claude/settings.json`, `.mcp.json`, and `AGENTS.md` into the workspace.
|
|
9
|
+
* When `AGENTS.md` is written, a stale `CLAUDE.md` from older controller versions
|
|
10
|
+
* is removed — Claude Code would otherwise load the persona twice.
|
|
9
11
|
*
|
|
10
12
|
* Idempotent — overwrites each call. The permissions block and the OAuth-vs-
|
|
11
13
|
* API-key branch come from `buildClaudeSettings()`, shared with
|
|
@@ -20,7 +22,9 @@ export async function writeClaudeCodeSettings(ctx) {
|
|
|
20
22
|
await fs.writeFile(path.join(dotClaude, 'settings.json'), JSON.stringify(buildSettings(ctx), null, 2) + '\n', { mode: 0o600 });
|
|
21
23
|
await fs.writeFile(path.join(workspaceDir, '.mcp.json'), JSON.stringify(buildMcpJson(ctx), null, 2) + '\n');
|
|
22
24
|
if (ctx.claudeMdContent !== undefined) {
|
|
23
|
-
await fs.writeFile(path.join(workspaceDir, '
|
|
25
|
+
await fs.writeFile(path.join(workspaceDir, 'AGENTS.md'), ctx.claudeMdContent);
|
|
26
|
+
// Only when we wrote AGENTS.md — otherwise a CLAUDE.md may be the user's own.
|
|
27
|
+
await fs.rm(path.join(workspaceDir, 'CLAUDE.md'), { force: true });
|
|
24
28
|
}
|
|
25
29
|
}
|
|
26
30
|
// ---------------------------------------------------------------------------
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-writer.js","sourceRoot":"","sources":["../../../src/providers/claude-code/settings-writer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AA4BnD
|
|
1
|
+
{"version":3,"file":"settings-writer.js","sourceRoot":"","sources":["../../../src/providers/claude-code/settings-writer.ts"],"names":[],"mappings":"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"}
|
|
@@ -307,7 +307,7 @@ export async function applyBootstrapConfig(data) {
|
|
|
307
307
|
catch (err) {
|
|
308
308
|
console.warn(`[apply-config] could not record payload sha256: ${toErrorMessage(err)}`);
|
|
309
309
|
}
|
|
310
|
-
// Stays best-effort by design — the apply must not depend on it (see
|
|
310
|
+
// Stays best-effort by design — the apply must not depend on it (see AGENTS.md).
|
|
311
311
|
// But a failure here is not cosmetic either: writing the config stops the
|
|
312
312
|
// channels for a plugin reload, and this restart is what brings them back. On
|
|
313
313
|
// 2026-08-26 the restart failed on two VM agents and only `console.error` knew;
|