@felan-ai/agent-core 0.9.4 → 0.9.5

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 CHANGED
@@ -62,7 +62,9 @@ judgment and an additive probability-of-yes judgment for independently scoring
62
62
  multiple conditions. Jev implements the latter with its Noul primitive; Agent
63
63
  Core does not expose Jev transport types through this contract.
64
64
 
65
- `collectClassifierSessionEvidence` converts the active Pi session projection
65
+ In root sessions, Agent Core coordinates one short initial-turn wait inside its
66
+ Jev classifier; later decisions and other classifier implementations retain
67
+ their normal timing. `collectClassifierSessionEvidence` converts the active Pi session projection
66
68
  into bounded conversation and correlated tool-call metadata for classifiers.
67
69
  It handles branch/compaction summaries, omits images, raw thinking and tool
68
70
  result bodies, and redacts recognizable credential patterns. It is not a
@@ -70,7 +72,8 @@ guarantee that arbitrary secrets in user text are detected. Feature packages
70
72
  choose their own classifier questions and any additional state.
71
73
 
72
74
  Session composition accepts an optional `dynamicThinking` capability. When the
73
- runtime has a classifier, it selects a supported effort on `before_agent_start`,
75
+ runtime has a classifier, it starts eligible effort selection at `input` and
76
+ applies it on `before_agent_start`,
74
77
  not queued follow-ups or tool continuations, without persisting the user's
75
78
  default. Codex requests are classified only when the Codex extension is loaded;
76
79
  eligible Anthropic models use Pi's mid-conversation effort support.
@@ -1,5 +1,12 @@
1
1
  import type { Classifier } from '../types.js';
2
2
  import { type CreateJevClientOptions } from './client.js';
3
+ import type { Logger } from '../../logger.js';
4
+ export declare function attachJevPreflight(classifier: Classifier, logger: Logger): {
5
+ startNextTurn(): void;
6
+ finishPreflight(): void;
7
+ dispose(): void;
8
+ evaluate<T>(decision: string, work: (signal: AbortSignal) => Promise<T>, signal?: AbortSignal): Promise<T>;
9
+ } | undefined;
3
10
  export declare function createJevClassifier(): Classifier | undefined;
4
11
  export declare function createJevClassifierWithOptions(options: CreateJevClientOptions): Classifier | undefined;
5
12
  //# sourceMappingURL=classifier.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"classifier.d.ts","sourceRoot":"","sources":["../../../src/classifier/jev/classifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAIX,MAAM,aAAa,CAAC;AACrB,OAAO,EAGL,KAAK,sBAAsB,EAE5B,MAAM,aAAa,CAAC;AAErB,wBAAgB,mBAAmB,IAAI,UAAU,GAAG,SAAS,CAE5D;AAED,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,sBAAsB,GAC9B,UAAU,GAAG,SAAS,CA4BxB"}
1
+ {"version":3,"file":"classifier.d.ts","sourceRoot":"","sources":["../../../src/classifier/jev/classifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAIX,MAAM,aAAa,CAAC;AACrB,OAAO,EAGL,KAAK,sBAAsB,EAE5B,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAK9C,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM;;;;;cAKxE;AAED,wBAAgB,mBAAmB,IAAI,UAAU,GAAG,SAAS,CAE5D;AAED,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,sBAAsB,GAC9B,UAAU,GAAG,SAAS,CAwCxB"}
@@ -1,4 +1,14 @@
1
1
  import { JevClientError, createJevClient, } from './client.js';
2
+ import { createJevPreflight } from './preflight.js';
3
+ const preflights = new WeakMap();
4
+ const jevClassifiers = new WeakSet();
5
+ export function attachJevPreflight(classifier, logger) {
6
+ if (!jevClassifiers.has(classifier))
7
+ return undefined;
8
+ const preflight = createJevPreflight(logger);
9
+ preflights.set(classifier, preflight);
10
+ return preflight;
11
+ }
2
12
  export function createJevClassifier() {
3
13
  return createJevClassifierWithOptions({});
4
14
  }
@@ -6,27 +16,37 @@ export function createJevClassifierWithOptions(options) {
6
16
  const client = createJevClient(options);
7
17
  if (!client.resolveTransport())
8
18
  return undefined;
9
- return {
19
+ const classifier = {
10
20
  canEvaluate(state, questions) {
11
21
  return client.canEvaluate(state, questions);
12
22
  },
13
23
  async evaluate(state, questions, signal) {
14
24
  const started = Date.now();
15
- const result = await client.evaluate(state, questions, signal === undefined ? {} : { signal });
25
+ const run = (activeSignal) => client.evaluate(state, questions, activeSignal === undefined ? {} : { signal: activeSignal });
26
+ const preflight = preflights.get(classifier);
27
+ const result = preflight
28
+ ? await preflight.evaluate(Object.keys(questions).join(','), run, signal)
29
+ : await run(signal);
16
30
  return { answers: classifierAnswers(result.answers), metadata: evaluationMetadata(result, started) };
17
31
  },
18
32
  async evaluateProbabilities(state, questions, signal) {
19
33
  const started = Date.now();
20
- const result = await client.evaluate(state, Object.fromEntries(Object.entries(questions).map(([id, question]) => [id, {
34
+ const run = (activeSignal) => client.evaluate(state, Object.fromEntries(Object.entries(questions).map(([id, question]) => [id, {
21
35
  type: 'noul',
22
36
  instructions: question.instructions,
23
- }])), signal === undefined ? {} : { signal });
37
+ }])), activeSignal === undefined ? {} : { signal: activeSignal });
38
+ const preflight = preflights.get(classifier);
39
+ const result = preflight
40
+ ? await preflight.evaluate(Object.keys(questions).join(','), run, signal)
41
+ : await run(signal);
24
42
  return {
25
43
  answers: classifierProbabilityAnswers(result.answers),
26
44
  metadata: evaluationMetadata(result, started),
27
45
  };
28
46
  },
29
47
  };
48
+ jevClassifiers.add(classifier);
49
+ return classifier;
30
50
  }
31
51
  function evaluationMetadata(result, started) {
32
52
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"classifier.js","sourceRoot":"","sources":["../../../src/classifier/jev/classifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"classifier.js","sourceRoot":"","sources":["../../../src/classifier/jev/classifier.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { Logger } from '../../logger.js';
2
+ export declare function createJevPreflight(logger: Logger): {
3
+ startNextTurn(): void;
4
+ finishPreflight(): void;
5
+ dispose(): void;
6
+ evaluate<T>(decision: string, work: (signal: AbortSignal) => Promise<T>, signal?: AbortSignal): Promise<T>;
7
+ };
8
+ //# sourceMappingURL=preflight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preflight.d.ts","sourceRoot":"","sources":["../../../src/classifier/jev/preflight.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAK9C,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM;;;;aA4B9B,CAAC,YAAY,MAAM,QAAQ,CAAC,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;EA8BnH"}
@@ -0,0 +1,66 @@
1
+ import { JevClientError } from './client.js';
2
+ const WAIT_MS = 2_000;
3
+ export function createJevPreflight(logger) {
4
+ const log = logger.child({ component: 'classifier-preflight' });
5
+ let enabled = false;
6
+ let turn;
7
+ function clear() {
8
+ if (!turn)
9
+ return;
10
+ clearTimeout(turn.timeout);
11
+ turn.controller.abort();
12
+ turn = undefined;
13
+ }
14
+ return {
15
+ startNextTurn() {
16
+ clear();
17
+ enabled = true;
18
+ },
19
+ finishPreflight() {
20
+ enabled = false;
21
+ if (!turn)
22
+ return;
23
+ log.debug({ event: 'turn-start', elapsedMs: Math.round(performance.now() - turn.started) }, 'classifier preflight to turn start');
24
+ clear();
25
+ },
26
+ dispose() {
27
+ enabled = false;
28
+ clear();
29
+ },
30
+ async evaluate(decision, work, signal) {
31
+ if (!enabled)
32
+ return work(signal ?? new AbortController().signal);
33
+ if (!turn) {
34
+ const controller = new AbortController();
35
+ turn = { controller, timeout: setTimeout(() => controller.abort(), WAIT_MS), started: performance.now() };
36
+ }
37
+ const current = turn;
38
+ const started = performance.now();
39
+ const combined = signal ? AbortSignal.any([current.controller.signal, signal]) : current.controller.signal;
40
+ let onAbort;
41
+ const aborted = new Promise((_resolve, reject) => {
42
+ onAbort = () => reject(new JevClientError(signal?.aborted ? 'aborted' : 'timeout', signal?.aborted ? 'Jev request was aborted' : 'Jev preflight expired'));
43
+ if (combined.aborted)
44
+ onAbort();
45
+ else
46
+ combined.addEventListener('abort', onAbort, { once: true });
47
+ });
48
+ let outcome = 'completed';
49
+ try {
50
+ if (combined.aborted)
51
+ return await aborted;
52
+ return await Promise.race([work(combined), aborted]);
53
+ }
54
+ catch (error) {
55
+ outcome = combined.aborted ? (signal?.aborted ? 'cancelled' : 'expired') : 'failed';
56
+ throw error;
57
+ }
58
+ finally {
59
+ combined.removeEventListener('abort', onAbort);
60
+ log.debug({ event: 'decision', decision, outcome, elapsedMs: Math.round(performance.now() - started),
61
+ preflightElapsedMs: Math.round(performance.now() - current.started) }, 'classifier preflight decision');
62
+ }
63
+ },
64
+ };
65
+ }
66
+ //# sourceMappingURL=preflight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preflight.js","sourceRoot":"","sources":["../../../src/classifier/jev/preflight.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/dynamic-thinking/session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAKrD,eAAO,MAAM,yBAAyB,0CAA0C,CAAC;AAEjF,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,YAAY,EACrB,2BAA2B,EAAE,OAAO,EACpC,QAAQ,CAAC,EAAE,eAAe,GACzB,eAAe,CAiFjB"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/dynamic-thinking/session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAoB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEzF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAKrD,eAAO,MAAM,yBAAyB,0CAA0C,CAAC;AAEjF,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,YAAY,EACrB,2BAA2B,EAAE,OAAO,EACpC,QAAQ,CAAC,EAAE,eAAe,GACzB,eAAe,CA4GjB"}
@@ -10,14 +10,16 @@ export function createDynamicThinkingSession(runtime, codexEffortUpdatesAvailabl
10
10
  const lifetime = new AbortController();
11
11
  let manualOverride = false;
12
12
  let expectedLevel;
13
+ let lastAutomaticLevel;
13
14
  let pendingSavings;
14
15
  const canClassify = (api) => api !== 'openai-codex-responses' || codexEffortUpdatesAvailable;
16
+ let pending;
15
17
  return {
16
18
  name: DYNAMIC_THINKING_PRODUCER,
17
19
  hidden: true,
18
20
  factory: (pi) => {
19
- pi.on('session_shutdown', () => { pendingSavings = undefined; lifetime.abort(); });
20
- pi.on('model_select', () => { pendingSavings = undefined; });
21
+ pi.on('session_shutdown', () => { pendingSavings = undefined; pending?.controller.abort(); lifetime.abort(); });
22
+ pi.on('model_select', () => { pendingSavings = undefined; pending?.controller.abort(); });
21
23
  pi.on('agent_settled', () => { pendingSavings = undefined; });
22
24
  pi.on('thinking_level_select', (event) => {
23
25
  if (event.level === expectedLevel)
@@ -25,8 +27,31 @@ export function createDynamicThinkingSession(runtime, codexEffortUpdatesAvailabl
25
27
  else {
26
28
  manualOverride = true;
27
29
  pendingSavings = undefined;
30
+ pending?.controller.abort();
28
31
  }
29
32
  });
33
+ const start = (prompt, model, original, ctx) => {
34
+ pending?.controller.abort();
35
+ const controller = new AbortController();
36
+ const evidence = collectClassifierSessionEvidence(ctx.sessionManager);
37
+ const decision = evaluateDynamicThinkingLevel(classifier, model, prompt, evidence, original, controller.signal);
38
+ decision.catch(() => { });
39
+ pending = { prompt, model, original, controller, decision };
40
+ return pending;
41
+ };
42
+ pi.on('input', (event, ctx) => {
43
+ if (event.streamingBehavior !== undefined || manualOverride || lifetime.signal.aborted
44
+ || !supportsDynamicThinking(ctx.model) || !canClassify(ctx.model.api))
45
+ return;
46
+ const original = pi.getThinkingLevel();
47
+ if (lastAutomaticLevel !== undefined && original !== lastAutomaticLevel) {
48
+ manualOverride = true;
49
+ pending?.controller.abort();
50
+ return;
51
+ }
52
+ if (isFelanThinkingLevel(original))
53
+ start(event.text, ctx.model, original, ctx);
54
+ });
30
55
  pi.on('before_agent_start', async (event, ctx) => {
31
56
  pendingSavings = undefined;
32
57
  if (manualOverride || lifetime.signal.aborted || !supportsDynamicThinking(ctx.model)
@@ -37,14 +62,20 @@ export function createDynamicThinkingSession(runtime, codexEffortUpdatesAvailabl
37
62
  if (!isFelanThinkingLevel(original))
38
63
  return;
39
64
  const sessionId = ctx.sessionManager.getSessionId();
40
- const evidence = collectClassifierSessionEvidence(ctx.sessionManager);
41
- const decision = await evaluateDynamicThinkingLevel(classifier, model, event.prompt, evidence, original, lifetime.signal);
65
+ const active = pending?.prompt === event.prompt && pending.model.id === model.id
66
+ && pending.model.provider === model.provider && pending.original === original
67
+ ? pending : start(event.prompt, model, original, ctx);
68
+ const decision = await active.decision;
69
+ if (pending === active)
70
+ pending = undefined;
42
71
  if (!decision || manualOverride || lifetime.signal.aborted || sessionId !== ctx.sessionManager.getSessionId()
72
+ || active.controller.signal.aborted
43
73
  || ctx.model?.api !== model.api || ctx.model?.provider !== model.provider
44
74
  || ctx.model?.id !== model.id || pi.getThinkingLevel() !== original)
45
75
  return;
46
76
  expectedLevel = decision.level;
47
77
  pi.setThinkingLevel(decision.level);
78
+ lastAutomaticLevel = decision.level;
48
79
  if (reporter && original === 'high' && (decision.level === 'low' || decision.level === 'medium')) {
49
80
  pendingSavings = { sessionId, model, previous: original, selected: decision.level,
50
81
  ...(decision.classifierCostUsd === undefined ? {} : { classifierCostUsd: decision.classifierCostUsd }) };
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/dynamic-thinking/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/dynamic-thinking/session.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
package/dist/session.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { createAgentSession, } from '@earendil-works/pi-coding-agent';
2
2
  import { loadFelanSessionExtensions } from './extensions.js';
3
+ import { attachJevPreflight } from './classifier/jev/classifier.js';
3
4
  import { createDynamicThinkingSession, DYNAMIC_THINKING_PRODUCER } from './dynamic-thinking/session.js';
4
5
  import { installModelSelectionPersistenceScope } from './model-selection.js';
5
6
  import { createAgentCoreResourceLoaderWithContextFiles, runtimeToolsExtensionName, } from './resource-loader.js';
@@ -35,6 +36,9 @@ export function createAgentCoreSessionRuntimeFactory(createOptions) {
35
36
  }
36
37
  async function composeAgentCoreSession(options) {
37
38
  const agentDir = options.agentDir ?? options.runtime.cwd;
39
+ const preflight = options.sessionManager.getHeader()?.parentSession === undefined && options.runtime.classifier
40
+ ? attachJevPreflight(options.runtime.classifier, options.runtime.logger)
41
+ : undefined;
38
42
  const modelSelectionScope = installModelSelectionPersistenceScope(options.settingsManager);
39
43
  const featureExtensions = await loadFelanSessionExtensions(options.extensionPackages, options.importExtension, options.runtime, agentDir, modelSelectionScope, options.extensionConfigOverrides, options.savings);
40
44
  const projectInstructions = await loadProjectInstructions(options.runtime);
@@ -42,6 +46,27 @@ async function composeAgentCoreSession(options) {
42
46
  ? createDynamicThinkingSession(options.runtime, featureExtensions.some((extension) => typeof extension !== 'function' && extension.name === '@felan-ai/ext-codex'), optionalDynamicThinkingReporter(options.savings))
43
47
  : undefined;
44
48
  const extensionFactories = [
49
+ ...(preflight === undefined ? [] : [{
50
+ name: '@felan-ai/agent-core/classifier-preflight',
51
+ hidden: true,
52
+ factory: (pi) => {
53
+ let inputStarted = false;
54
+ pi.on('input', (event) => {
55
+ if (event.streamingBehavior !== undefined)
56
+ return;
57
+ inputStarted = true;
58
+ preflight.startNextTurn();
59
+ });
60
+ pi.on('before_agent_start', () => {
61
+ if (!inputStarted)
62
+ preflight.startNextTurn();
63
+ inputStarted = false;
64
+ });
65
+ pi.on('turn_start', () => preflight.finishPreflight());
66
+ pi.on('agent_settled', () => preflight.dispose());
67
+ pi.on('session_shutdown', () => preflight.dispose());
68
+ },
69
+ }]),
45
70
  ...(projectInstructions === undefined ? [] : [createProjectInstructionsExtension(projectInstructions)]),
46
71
  ...featureExtensions,
47
72
  ...(options.inlineExtensions ?? []),
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@felan-ai/agent-core",
3
- "version": "0.9.4",
3
+ "version": "0.9.5",
4
4
  "description": "Portable Felan agent contracts and composition",
5
5
  "license": "MIT",
6
6
  "type": "module",