@felan-ai/ext-codex 0.1.5 → 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/NOTICE +7 -6
- package/README.md +31 -1
- package/dist/config.d.ts +5 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +11 -37
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -4
- package/dist/index.js.map +1 -1
- package/dist/prompt.d.ts +3 -0
- package/dist/prompt.d.ts.map +1 -0
- package/dist/prompt.js +60 -0
- package/dist/prompt.js.map +1 -0
- package/dist/tools.d.ts +2 -2
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js.map +1 -1
- package/package.json +3 -3
package/NOTICE
CHANGED
|
@@ -5,7 +5,8 @@ Includes selected code and behavior adapted from
|
|
|
5
5
|
62d1501ac0c6acb39c4b4d225a9e9056a7ba3b91,
|
|
6
6
|
https://github.com/IgorWarzocha/howaboua-pi-stuff/tree/62d1501ac0c6acb39c4b4d225a9e9056a7ba3b91/packages/pi-codex-conversion.
|
|
7
7
|
|
|
8
|
-
Additional patch replacement
|
|
8
|
+
Additional patch replacement, exec shutdown, and structured skill-prompt
|
|
9
|
+
preservation behavior is adapted from
|
|
9
10
|
@howaboua/pi-codex-conversion 3.0.15 at npm gitHead
|
|
10
11
|
b4b99630cda3c066749af0fb3ac9b8184b2a4c7d,
|
|
11
12
|
https://github.com/IgorWarzocha/howaboua-pi-stuff/tree/b4b99630cda3c066749af0fb3ac9b8184b2a4c7d/packages/pi-codex-conversion.
|
|
@@ -14,11 +15,11 @@ Copyright (c) 2026 Umberto B.
|
|
|
14
15
|
Licensed under the MIT License included in this package.
|
|
15
16
|
|
|
16
17
|
Adapted portions include structured tool schemas and output conventions,
|
|
17
|
-
patch parsing and matching, model activation policy,
|
|
18
|
-
cached WebSocket transport selection,
|
|
19
|
-
implements process and file operations against
|
|
20
|
-
0.84.2's native OpenAI Codex transport for connection
|
|
21
|
-
continuation.
|
|
18
|
+
patch parsing and matching, model activation policy, structured skill-prompt
|
|
19
|
+
preservation, OpenAI request options, cached WebSocket transport selection,
|
|
20
|
+
and local TUI tool labels. Felan implements process and file operations against
|
|
21
|
+
AgentRuntime and uses Pi 0.84.2's native OpenAI Codex transport for connection
|
|
22
|
+
reuse and cached continuation.
|
|
22
23
|
|
|
23
24
|
This package uses @earendil-works/pi-tui 0.84.2 from
|
|
24
25
|
https://github.com/earendil-works/pi, licensed under the MIT License.
|
package/README.md
CHANGED
|
@@ -10,10 +10,15 @@ Active mode replaces `read`, `bash`, `edit`, and `write` with
|
|
|
10
10
|
restores the ordinary tools. All shell and filesystem operations use the
|
|
11
11
|
current `AgentRuntime`.
|
|
12
12
|
Runtimes without persistent-process support keep Felan's ordinary coding tools.
|
|
13
|
+
Because Pi normally exposes skill metadata only while `read` is active, Codex
|
|
14
|
+
mode restores that metadata from Pi's structured prompt options. Matching
|
|
15
|
+
skills remain progressively disclosed: the model opens the selected `SKILL.md`
|
|
16
|
+
through `exec_command` and loads referenced files only as needed.
|
|
13
17
|
The local TUI presents Codex tool calls with friendly action labels while
|
|
14
18
|
headless modes continue to expose the stable tool names and raw results.
|
|
15
19
|
|
|
16
|
-
Optional settings live
|
|
20
|
+
Optional settings live under `extensionConfig.codex` in
|
|
21
|
+
`$FELAN_AGENT_DIR/settings.json`:
|
|
17
22
|
|
|
18
23
|
```json
|
|
19
24
|
{
|
|
@@ -63,3 +68,28 @@ pnpm --filter @felan-ai/ext-codex test
|
|
|
63
68
|
```
|
|
64
69
|
|
|
65
70
|
See [NOTICE](NOTICE) for upstream attribution.
|
|
71
|
+
|
|
72
|
+
## Package boundary and requirements
|
|
73
|
+
|
|
74
|
+
Agent Core owns the runtime contract and Pi owns provider transport. This
|
|
75
|
+
package owns provider/model eligibility, structured tool replacement, request
|
|
76
|
+
controls, PTY/session handling, and bounded image delivery; it does not register
|
|
77
|
+
or replace a provider. Filesystem, process, PTY, and image reads go through the
|
|
78
|
+
active `AgentRuntime`.
|
|
79
|
+
|
|
80
|
+
The package requires a compatible `@felan-ai/agent-core` peer, TypeBox, and
|
|
81
|
+
Pi-TUI. Runtime adapters without persistent-process support retain Felan's
|
|
82
|
+
ordinary coding tools rather than registering unusable Codex controls. Host
|
|
83
|
+
mode remains current-user access and is not a sandbox.
|
|
84
|
+
|
|
85
|
+
## Related documentation
|
|
86
|
+
|
|
87
|
+
- [Codex tools configuration](../../docs/user-guide/configuration.md#codex-tools)
|
|
88
|
+
- [Runtime and security](../../docs/concepts/runtime-and-security.md)
|
|
89
|
+
- [Extension catalog](../../docs/reference/extension-catalog.md)
|
|
90
|
+
|
|
91
|
+
## Attribution
|
|
92
|
+
|
|
93
|
+
Selected implementation behavior is adapted from the reviewed
|
|
94
|
+
`@howaboua/pi-codex-conversion` sources. See [NOTICE](NOTICE) and
|
|
95
|
+
[LICENSE](LICENSE) for source commits and attribution.
|
package/dist/config.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { AgentRuntime } from '@felan-ai/agent-core';
|
|
2
1
|
export type CodexVerbosity = 'low' | 'medium' | 'high';
|
|
3
2
|
export interface CodexConfig {
|
|
4
3
|
readonly fast: boolean;
|
|
@@ -6,6 +5,10 @@ export interface CodexConfig {
|
|
|
6
5
|
readonly forceCachedWebSockets: boolean;
|
|
7
6
|
}
|
|
8
7
|
export declare const DEFAULT_CODEX_CONFIG: CodexConfig;
|
|
9
|
-
export declare
|
|
8
|
+
export declare const CODEX_CONFIG: import("@felan-ai/agent-core").ExtensionConfigDefinition<{
|
|
9
|
+
readonly fast: import("@felan-ai/agent-core").ExtensionConfigField<boolean>;
|
|
10
|
+
readonly verbosity: import("@felan-ai/agent-core").ExtensionConfigField<"low" | "medium" | "high">;
|
|
11
|
+
readonly forceCachedWebSockets: import("@felan-ai/agent-core").ExtensionConfigField<boolean>;
|
|
12
|
+
}>;
|
|
10
13
|
export declare function validateCodexConfig(value: unknown, source?: string): CodexConfig;
|
|
11
14
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEvD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC;CACzC;AAED,eAAO,MAAM,oBAAoB,EAAE,WAIlC,CAAC;AAEF,eAAO,MAAM,YAAY;;;;EAQvB,CAAC;AAEH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,SAAwC,GAAG,WAAW,CAsB/G"}
|
package/dist/config.js
CHANGED
|
@@ -1,41 +1,21 @@
|
|
|
1
|
+
import { configField, defineExtensionConfig } from '@felan-ai/agent-core';
|
|
1
2
|
export const DEFAULT_CODEX_CONFIG = {
|
|
2
3
|
fast: false,
|
|
3
4
|
verbosity: 'low',
|
|
4
5
|
forceCachedWebSockets: true,
|
|
5
6
|
};
|
|
6
|
-
const
|
|
7
|
-
'
|
|
8
|
-
'
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
content = await runtime.readAgentFile('codex.json');
|
|
17
|
-
}
|
|
18
|
-
catch (error) {
|
|
19
|
-
if (isMissingFile(error))
|
|
20
|
-
return DEFAULT_CODEX_CONFIG;
|
|
21
|
-
throw new Error(`Failed to read ${agentDir}/codex.json: ${errorMessage(error)}`, { cause: error });
|
|
22
|
-
}
|
|
23
|
-
let parsed;
|
|
24
|
-
try {
|
|
25
|
-
parsed = JSON.parse(new TextDecoder().decode(content));
|
|
26
|
-
}
|
|
27
|
-
catch (error) {
|
|
28
|
-
throw new Error(`Invalid ${agentDir}/codex.json: ${errorMessage(error)}`, { cause: error });
|
|
29
|
-
}
|
|
30
|
-
return validateCodexConfig(parsed, `${agentDir}/codex.json`);
|
|
31
|
-
}
|
|
32
|
-
export function validateCodexConfig(value, source = 'codex.json') {
|
|
7
|
+
export const CODEX_CONFIG = defineExtensionConfig({
|
|
8
|
+
id: 'codex',
|
|
9
|
+
title: 'Codex tools',
|
|
10
|
+
fields: {
|
|
11
|
+
fast: configField.boolean({ default: false, description: 'Request priority service tier' }),
|
|
12
|
+
verbosity: configField.enum(['low', 'medium', 'high'], { default: 'low', description: 'Codex response verbosity' }),
|
|
13
|
+
forceCachedWebSockets: configField.boolean({ default: true, description: 'Prefer cached WebSocket transport' }),
|
|
14
|
+
},
|
|
15
|
+
});
|
|
16
|
+
export function validateCodexConfig(value, source = 'settings.json.extensionConfig.codex') {
|
|
33
17
|
if (!isRecord(value))
|
|
34
18
|
throw new Error(`${source} must contain a JSON object`);
|
|
35
|
-
for (const field of Object.keys(value)) {
|
|
36
|
-
if (!CONFIG_FIELDS.has(field))
|
|
37
|
-
throw new Error(`${source} contains unknown field: ${field}`);
|
|
38
|
-
}
|
|
39
19
|
if (value.fast !== undefined && typeof value.fast !== 'boolean') {
|
|
40
20
|
throw new Error(`${source}.fast must be a boolean`);
|
|
41
21
|
}
|
|
@@ -58,10 +38,4 @@ export function validateCodexConfig(value, source = 'codex.json') {
|
|
|
58
38
|
function isRecord(value) {
|
|
59
39
|
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
60
40
|
}
|
|
61
|
-
function isMissingFile(error) {
|
|
62
|
-
return error instanceof Error && 'code' in error && error.code === 'ENOENT';
|
|
63
|
-
}
|
|
64
|
-
function errorMessage(error) {
|
|
65
|
-
return error instanceof Error ? error.message : String(error);
|
|
66
|
-
}
|
|
67
41
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAU1E,MAAM,CAAC,MAAM,oBAAoB,GAAgB;IAC/C,IAAI,EAAE,KAAK;IACX,SAAS,EAAE,KAAK;IAChB,qBAAqB,EAAE,IAAI;CAC5B,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,qBAAqB,CAAC;IAChD,EAAE,EAAE,OAAO;IACX,KAAK,EAAE,aAAa;IACpB,MAAM,EAAE;QACN,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,+BAA+B,EAAE,CAAC;QAC3F,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;QACnH,qBAAqB,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,mCAAmC,EAAE,CAAC;KAChH;CACF,CAAC,CAAC;AAEH,MAAM,UAAU,mBAAmB,CAAC,KAAc,EAAE,MAAM,GAAG,qCAAqC;IAChG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,6BAA6B,CAAC,CAAC;IAC9E,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,yBAAyB,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,KAAK,CAAC,qBAAqB,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;QAClG,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,0CAA0C,CAAC,CAAC;IACvE,CAAC;IACD,IACE,KAAK,CAAC,SAAS,KAAK,SAAS;WAC1B,KAAK,CAAC,SAAS,KAAK,KAAK;WACzB,KAAK,CAAC,SAAS,KAAK,QAAQ;WAC5B,KAAK,CAAC,SAAS,KAAK,MAAM,EAC7B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,yCAAyC,CAAC,CAAC;IACtE,CAAC;IACD,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,oBAAoB,CAAC,IAAI;QAC7C,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,oBAAoB,CAAC,SAAS;QAC5D,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;eAC7C,oBAAoB,CAAC,qBAAqB;KAChD,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type FelanExtension } from '@felan-ai/agent-core';
|
|
2
2
|
declare const codexExtension: FelanExtension;
|
|
3
|
-
export {
|
|
3
|
+
export { CODEX_CONFIG, DEFAULT_CODEX_CONFIG, validateCodexConfig } from './config.js';
|
|
4
4
|
export type { CodexConfig, CodexVerbosity } from './config.js';
|
|
5
5
|
export { ExecSessionManager, formatExecResult } from './exec-session-manager.js';
|
|
6
6
|
export type { ExecCommandInput, UnifiedExecResult, WriteStdinInput } from './exec-session-manager.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,cAAc,EAEpB,MAAM,sBAAsB,CAAC;AAW9B,QAAA,MAAM,cAAc,EAAE,cAqCrB,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACtF,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AACjF,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACtG,OAAO,EAAE,kBAAkB,EAAE,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC5F,OAAO,EACL,gCAAgC,EAChC,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AACxB,eAAe,cAAc,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import {} from '@felan-ai/agent-core';
|
|
2
|
-
import {
|
|
1
|
+
import { associateExtensionConfig, } from '@felan-ai/agent-core';
|
|
2
|
+
import { CODEX_CONFIG, DEFAULT_CODEX_CONFIG } from './config.js';
|
|
3
3
|
import { ExecSessionManager } from './exec-session-manager.js';
|
|
4
4
|
import { supportsCodexModel, supportsImageInput } from './model-policy.js';
|
|
5
|
+
import { injectCodexSkills } from './prompt.js';
|
|
5
6
|
import { applyCodexRequestOptions } from './request-options.js';
|
|
6
7
|
import { CODEX_TOOL_NAMES, createCodexTools, registerPatchResultEvent } from './tools.js';
|
|
7
8
|
const REPLACED_TOOL_NAMES = new Set(['read', 'bash', 'edit', 'write']);
|
|
8
9
|
const CODEX_TOOL_NAME_SET = new Set(CODEX_TOOL_NAMES);
|
|
9
10
|
const codexExtension = async (pi) => {
|
|
10
|
-
const config =
|
|
11
|
+
const config = { ...DEFAULT_CODEX_CONFIG, ...pi.config };
|
|
11
12
|
const sessions = new ExecSessionManager(pi.runtime);
|
|
12
13
|
for (const tool of createCodexTools(pi.runtime, sessions))
|
|
13
14
|
pi.registerTool(tool);
|
|
@@ -32,16 +33,23 @@ const codexExtension = async (pi) => {
|
|
|
32
33
|
};
|
|
33
34
|
pi.on('session_start', (_event, ctx) => synchronizeTools(ctx.model));
|
|
34
35
|
pi.on('model_select', (event) => synchronizeTools(event.model));
|
|
36
|
+
pi.on('before_agent_start', (event, ctx) => {
|
|
37
|
+
if (!supportsCodexModel(ctx.model) || !pi.runtime.processes)
|
|
38
|
+
return undefined;
|
|
39
|
+
const systemPrompt = injectCodexSkills(event.systemPrompt, event.systemPromptOptions.skills);
|
|
40
|
+
return systemPrompt === event.systemPrompt ? undefined : { systemPrompt };
|
|
41
|
+
});
|
|
35
42
|
pi.on('before_provider_request', (event, ctx) => (applyCodexRequestOptions(event.payload, ctx, config)));
|
|
36
43
|
pi.on('session_shutdown', async () => {
|
|
37
44
|
await sessions.shutdown();
|
|
38
45
|
});
|
|
39
46
|
};
|
|
40
|
-
export {
|
|
47
|
+
export { CODEX_CONFIG, DEFAULT_CODEX_CONFIG, validateCodexConfig } from './config.js';
|
|
41
48
|
export { ExecSessionManager, formatExecResult } from './exec-session-manager.js';
|
|
42
49
|
export { supportsCodexModel, supportsCodexResponsesRequest } from './model-policy.js';
|
|
43
50
|
export { applyCodexRequestOptions } from './request-options.js';
|
|
44
51
|
export { CODEX_TOOL_NAMES, MAX_VIEW_IMAGE_INPUT_BYTES, createCodexTools } from './tools.js';
|
|
45
52
|
export { createCodexStreamFunctionWrapper, resolveCodexStreamOptions, resolveCodexTransport, } from './transport.js';
|
|
46
53
|
export default codexExtension;
|
|
54
|
+
associateExtensionConfig(codexExtension, CODEX_CONFIG);
|
|
47
55
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/prompt.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAUlD,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,SAAS,KAAK,EAAE,GAAG,SAAS,GACnC,MAAM,CAOR"}
|
package/dist/prompt.js
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
const SKILLS_SECTION_OPEN = '<skills_instructions>';
|
|
2
|
+
export function injectCodexSkills(systemPrompt, skills) {
|
|
3
|
+
if (systemPrompt.includes(SKILLS_SECTION_OPEN))
|
|
4
|
+
return systemPrompt;
|
|
5
|
+
const visibleSkills = (skills ?? [])
|
|
6
|
+
.filter((skill) => !skill.disableModelInvocation)
|
|
7
|
+
.map(({ name, description, filePath }) => ({ name, description, filePath }));
|
|
8
|
+
if (visibleSkills.length === 0)
|
|
9
|
+
return systemPrompt;
|
|
10
|
+
return insertBeforeTrailingContext(systemPrompt, formatSkillsSection(visibleSkills));
|
|
11
|
+
}
|
|
12
|
+
function formatSkillsSection(skills) {
|
|
13
|
+
const lines = [
|
|
14
|
+
SKILLS_SECTION_OPEN,
|
|
15
|
+
'## Skills',
|
|
16
|
+
'Skills are local instructions stored in `SKILL.md` files.',
|
|
17
|
+
'### Available skills',
|
|
18
|
+
'<available_skills>',
|
|
19
|
+
];
|
|
20
|
+
for (const skill of skills) {
|
|
21
|
+
lines.push(' <skill>');
|
|
22
|
+
lines.push(` <name>${escapeXml(skill.name)}</name>`);
|
|
23
|
+
lines.push(` <description>${escapeXml(skill.description)}</description>`);
|
|
24
|
+
lines.push(` <location>${escapeXml(skill.filePath)}</location>`);
|
|
25
|
+
lines.push(' </skill>');
|
|
26
|
+
}
|
|
27
|
+
lines.push('</available_skills>');
|
|
28
|
+
lines.push('### How to use skills');
|
|
29
|
+
lines.push('- Use a skill when the user names it or the request clearly matches its description.');
|
|
30
|
+
lines.push('- Use the minimal required set. If multiple skills apply, state the order briefly.');
|
|
31
|
+
lines.push('- Open each selected `SKILL.md` before acting, resolve relative paths from its directory, and load only the referenced files you need.');
|
|
32
|
+
lines.push('- Prefer existing skill scripts, assets, and templates over recreating them.');
|
|
33
|
+
lines.push('### Fallback');
|
|
34
|
+
lines.push('- If a skill is missing or its path cannot be read, say so briefly and continue with the best available approach.');
|
|
35
|
+
lines.push('</skills_instructions>');
|
|
36
|
+
return lines.join('\n');
|
|
37
|
+
}
|
|
38
|
+
function insertBeforeTrailingContext(systemPrompt, section) {
|
|
39
|
+
const markers = ['\nCurrent working directory:', '\nCurrent date:'];
|
|
40
|
+
let insertionIndex = systemPrompt.length;
|
|
41
|
+
for (const marker of markers) {
|
|
42
|
+
const index = systemPrompt.lastIndexOf(marker);
|
|
43
|
+
if (index !== -1)
|
|
44
|
+
insertionIndex = Math.min(insertionIndex, index);
|
|
45
|
+
}
|
|
46
|
+
if (insertionIndex === systemPrompt.length) {
|
|
47
|
+
const separator = systemPrompt.endsWith('\n') ? '\n' : '\n\n';
|
|
48
|
+
return `${systemPrompt}${separator}${section}`;
|
|
49
|
+
}
|
|
50
|
+
return `${systemPrompt.slice(0, insertionIndex)}\n\n${section}${systemPrompt.slice(insertionIndex)}`;
|
|
51
|
+
}
|
|
52
|
+
function escapeXml(value) {
|
|
53
|
+
return value
|
|
54
|
+
.replace(/&/gu, '&')
|
|
55
|
+
.replace(/</gu, '<')
|
|
56
|
+
.replace(/>/gu, '>')
|
|
57
|
+
.replace(/"/gu, '"')
|
|
58
|
+
.replace(/'/gu, ''');
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { type AgentRuntime, type
|
|
1
|
+
import { type AgentRuntime, type FelanExtensionAPI, type ToolDefinition } from '@felan-ai/agent-core';
|
|
2
2
|
import { ExecSessionManager } from './exec-session-manager.js';
|
|
3
3
|
export declare const CODEX_TOOL_NAMES: readonly ["exec_command", "write_stdin", "apply_patch", "view_image"];
|
|
4
4
|
export declare const MAX_VIEW_IMAGE_INPUT_BYTES: number;
|
|
5
5
|
export declare function createCodexTools(runtime: AgentRuntime, sessions: ExecSessionManager): ToolDefinition<any, any, any>[];
|
|
6
|
-
export declare function registerPatchResultEvent(pi:
|
|
6
|
+
export declare function registerPatchResultEvent(pi: Pick<FelanExtensionAPI, 'on'>): void;
|
|
7
7
|
//# sourceMappingURL=tools.d.ts.map
|
package/dist/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,kBAAkB,EAAoB,MAAM,2BAA2B,CAAC;AAoCjF,eAAO,MAAM,gBAAgB,uEAKnB,CAAC;AAEX,eAAO,MAAM,0BAA0B,QAAmB,CAAC;AAI3D,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,kBAAkB,GAC3B,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAkIjC;AAED,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,GAAG,IAAI,CAWhF"}
|
package/dist/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@felan-ai/ext-codex",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Codex-compatible structured tools and OpenAI request controls for Felan",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -29,10 +29,10 @@
|
|
|
29
29
|
"typebox": "1.1.38"
|
|
30
30
|
},
|
|
31
31
|
"peerDependencies": {
|
|
32
|
-
"@felan-ai/agent-core": "^0.
|
|
32
|
+
"@felan-ai/agent-core": "^0.5.0"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@felan-ai/agent-core": "0.
|
|
35
|
+
"@felan-ai/agent-core": "0.5.0"
|
|
36
36
|
},
|
|
37
37
|
"publishConfig": {
|
|
38
38
|
"access": "public",
|