billion-context-pi 0.1.34 → 0.1.36

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.
@@ -2,5 +2,9 @@ import type { SessionEntry, SessionMessageEntry } from "@earendil-works/pi-codin
2
2
  import type { CoreMessage } from "acp-kernel";
3
3
  type AgentMessage = SessionMessageEntry["message"];
4
4
  export declare function entriesToCoreMessages(entries: SessionEntry[]): CoreMessage[];
5
+ export declare function extractText(content: unknown): string;
6
+ export declare function messageIdentity(message: unknown): string;
7
+ export declare function messageRef(message: unknown): string | undefined;
8
+ export declare function matchesStoredText(stored: string, visible: string): boolean;
5
9
  export declare function coreOutToAgentMessages(coreOut: CoreMessage[], originalById: Map<string, AgentMessage>): AgentMessage[];
6
10
  export {};
package/dist/runtime.d.ts CHANGED
@@ -11,13 +11,8 @@ export interface AcpRuntime {
11
11
  store: SessionStateStore;
12
12
  adapter: AdapterConfig;
13
13
  setAdapter(adapter: AdapterConfig): void;
14
- /** Record that a nudge was already shown for the turn keyed by last user msg
15
- * id, so a tier/growth nudge prints at most once per turn instead of on
16
- * every context event (pi fires multiple per assistant reply). */
17
14
  markNudgeShown(turnKey: string): void;
18
15
  nudgeShownFor(turnKey: string): boolean;
19
- /** Clear per-turn nudge tracking. Called on session_start so the Set does not
20
- * grow unbounded across sessions in a long-lived Pi process. */
21
16
  clearNudgeTracking(): void;
22
17
  liveContextLimit(ctx: ExtensionContext): number;
23
18
  configFor(ctx: ExtensionContext): Config;
package/dist/state.d.ts CHANGED
@@ -1,8 +1,15 @@
1
1
  import { type CompressionState } from "acp-kernel";
2
+ export interface LiveRefOrigin {
3
+ rawId: string;
4
+ identity: string;
5
+ }
6
+ export declare function readParentSessionPath(sessionFile: string): Promise<string | undefined>;
2
7
  export declare class SessionStateStore {
3
8
  private cache;
4
- private loadedKey;
5
- load(sessionFile: string | undefined, _sessionId: string): Promise<CompressionState>;
6
- save(state: CompressionState, sessionFile: string | undefined, _sessionId: string): Promise<void>;
9
+ load(sessionFile: string | undefined, sessionId: string): Promise<CompressionState>;
10
+ save(state: CompressionState, sessionFile: string | undefined, sessionId: string): Promise<void>;
11
+ getLiveRefOrigins(sessionFile: string | undefined, sessionId: string): LiveRefOrigin[];
12
+ setLiveRefOrigins(sessionFile: string | undefined, sessionId: string, origins: LiveRefOrigin[]): void;
7
13
  invalidate(): void;
14
+ private tryLoadParentState;
8
15
  }
@@ -1,4 +1,4 @@
1
- import type { AdapterConfig } from "./config.js";
1
+ import type { AdapterConfig, CompressConfig, DelegateConfig } from "./config.js";
2
2
  /** User-facing config keys (subset of AdapterConfig). Loaded from
3
3
  * ~/.<CONFIG_DIR_NAME>/acp.json (global) and <cwd>/.<CONFIG_DIR_NAME>/acp.json
4
4
  * (project-local overrides project-global). Project wins over global. */
@@ -6,9 +6,11 @@ export interface UserAcpConfig {
6
6
  debug?: boolean;
7
7
  autoUpdate?: boolean;
8
8
  modelContextLimit?: number;
9
- delegate?: boolean;
10
9
  toolBashDefaultTimeout?: number;
11
10
  toolOutputMaxBytes?: number;
11
+ delegate?: boolean | DelegateConfig;
12
+ compress?: CompressConfig;
13
+ displayUsage?: "merged" | "separate";
12
14
  }
13
15
  /** Read global + project acp.json, project overrides global. Returns {} on any
14
16
  * error (missing file, bad JSON) — never throws. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "billion-context-pi",
3
- "version": "0.1.34",
3
+ "version": "0.1.36",
4
4
  "description": "One billion, not one million. Model-driven context management for the Pi coding agent.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -59,7 +59,7 @@
59
59
  "devDependencies": {
60
60
  "@earendil-works/pi-coding-agent": "0.83.0",
61
61
  "@types/node": "^26.1.2",
62
- "acp-kernel": "0.0.19",
62
+ "acp-kernel": "0.0.21",
63
63
  "tsup": "^8.5.1",
64
64
  "tsx": "^4.23.1",
65
65
  "typescript": "^7.0.2"