@scotthuang/agent-knock-knock 0.8.1 → 0.10.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.
Files changed (53) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/README.md +45 -17
  3. package/dist/src/agent-session-provider.d.ts +13 -0
  4. package/dist/src/claude-local-transcript-provider.d.ts +29 -1
  5. package/dist/src/claude-local-transcript-provider.js +313 -0
  6. package/dist/src/claude-local-transcript-provider.js.map +1 -1
  7. package/dist/src/claude-terminal-agent-adapter.d.ts +6 -1
  8. package/dist/src/claude-terminal-agent-adapter.js +178 -0
  9. package/dist/src/claude-terminal-agent-adapter.js.map +1 -1
  10. package/dist/src/cli.js +5671 -317
  11. package/dist/src/cli.js.map +1 -1
  12. package/dist/src/codex-local-session-provider.d.ts +3 -1
  13. package/dist/src/codex-local-session-provider.js +17 -0
  14. package/dist/src/codex-local-session-provider.js.map +1 -1
  15. package/dist/src/codex-store-adapter.d.ts +26 -1
  16. package/dist/src/codex-store-adapter.js +575 -2
  17. package/dist/src/codex-store-adapter.js.map +1 -1
  18. package/dist/src/codex-terminal-agent-adapter.d.ts +6 -1
  19. package/dist/src/codex-terminal-agent-adapter.js +192 -0
  20. package/dist/src/codex-terminal-agent-adapter.js.map +1 -1
  21. package/dist/src/managed-session.d.ts +163 -0
  22. package/dist/src/managed-session.js +873 -0
  23. package/dist/src/managed-session.js.map +1 -0
  24. package/dist/src/native-thread-lifecycle-policy.d.ts +57 -0
  25. package/dist/src/native-thread-lifecycle-policy.js +116 -0
  26. package/dist/src/native-thread-lifecycle-policy.js.map +1 -0
  27. package/dist/src/openclaw-plugin-helpers.d.ts +45 -12
  28. package/dist/src/openclaw-plugin-helpers.js +386 -47
  29. package/dist/src/openclaw-plugin-helpers.js.map +1 -1
  30. package/dist/src/openclaw-plugin.js +814 -144
  31. package/dist/src/openclaw-plugin.js.map +1 -1
  32. package/dist/src/protocol.d.ts +28 -1
  33. package/dist/src/protocol.js +93 -4
  34. package/dist/src/protocol.js.map +1 -1
  35. package/dist/src/session-store.d.ts +57 -0
  36. package/dist/src/session-store.js +529 -0
  37. package/dist/src/session-store.js.map +1 -0
  38. package/dist/src/store.d.ts +5 -3
  39. package/dist/src/store.js +422 -17
  40. package/dist/src/store.js.map +1 -1
  41. package/dist/src/terminal-agent-adapter.d.ts +175 -0
  42. package/dist/src/terminal-agent-adapter.js +12 -0
  43. package/dist/src/terminal-agent-adapter.js.map +1 -1
  44. package/dist/src/terminal-agent-bridge.d.ts +9 -0
  45. package/dist/src/terminal-agent-bridge.js +17 -1
  46. package/dist/src/terminal-agent-bridge.js.map +1 -1
  47. package/dist/src/terminal-control-provider.d.ts +2 -0
  48. package/dist/src/terminal-control-provider.js +1 -0
  49. package/dist/src/terminal-control-provider.js.map +1 -1
  50. package/docs/quickstart-tmux.md +23 -2
  51. package/openclaw.plugin.json +19 -3
  52. package/package.json +1 -1
  53. package/templates/openclaw-skills/agent-knock-knock/SKILL.md +42 -17
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managed-session.js","sourceRoot":"","sources":["../../src/managed-session.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import { type ManagedSessionStatus } from "./managed-session.js";
2
+ export interface CodexLifecycleIdentityEvidence {
3
+ sessionId: string;
4
+ processUuid?: string;
5
+ processBirth?: string;
6
+ rollout?: {
7
+ fd: string;
8
+ device: string;
9
+ inode: string;
10
+ path: string;
11
+ };
12
+ }
13
+ export declare function hasStrongCodexLifecycleIdentity(identity: CodexLifecycleIdentityEvidence): boolean;
14
+ export declare function codexIdentityVerifiesLifecyclePostcondition(input: {
15
+ operation: "new_thread" | "resume_thread";
16
+ parsedNativeThreadId: string;
17
+ observationSucceeded: boolean;
18
+ observedIdentity?: CodexLifecycleIdentityEvidence;
19
+ beforeIdentity?: CodexLifecycleIdentityEvidence;
20
+ }): boolean;
21
+ export type CodexLifecyclePostconditionEvidence = "invalid" | "no_rollout" | "matching_after" | "lingering_before";
22
+ export declare function classifyCodexLifecyclePostcondition(input: {
23
+ operation: "new_thread" | "resume_thread";
24
+ parsedNativeThreadId: string;
25
+ observationSucceeded: boolean;
26
+ observedIdentity?: CodexLifecycleIdentityEvidence;
27
+ beforeIdentity?: CodexLifecycleIdentityEvidence;
28
+ }): CodexLifecyclePostconditionEvidence;
29
+ export declare function isFreshCodexPostProbeScreen(input: {
30
+ probeSent: boolean;
31
+ screenDigest?: string;
32
+ postProbeBaselineDigest?: string;
33
+ }): boolean;
34
+ export interface ResumeCandidateAvailabilityInput {
35
+ hasCandidateToken: boolean;
36
+ current: boolean;
37
+ activeElsewhere: boolean;
38
+ activeOwnershipUnverifiable: boolean;
39
+ managedSessionCount: number;
40
+ managedSessionStatus?: ManagedSessionStatus;
41
+ managedSessionBindingInactive?: boolean;
42
+ managedSessionWorkspaceMatches?: boolean;
43
+ archived: boolean;
44
+ }
45
+ export interface ResumeCandidateAvailability {
46
+ resumable: boolean;
47
+ unavailableReason?: string;
48
+ }
49
+ /**
50
+ * Resume is permitted only for a free historical native thread. A first-class
51
+ * Session is reusable after it was explicitly detached. A still-bound record
52
+ * is also selectable when its recorded process is conclusively no longer
53
+ * alive; the resume mutation must CAS-detach that stale binding before it
54
+ * prepares terminal input. Every unverifiable/live status remains
55
+ * authoritative and blocks implicit rebinding.
56
+ */
57
+ export declare function evaluateResumeCandidateAvailability(input: ResumeCandidateAvailabilityInput): ResumeCandidateAvailability;
@@ -0,0 +1,116 @@
1
+ import { isExactNativeThreadId } from "./managed-session.js";
2
+ export function hasStrongCodexLifecycleIdentity(identity) {
3
+ return Boolean(isExactNativeThreadId(identity.sessionId) &&
4
+ identity.processUuid &&
5
+ identity.processBirth &&
6
+ identity.rollout?.fd &&
7
+ identity.rollout.device &&
8
+ identity.rollout.inode &&
9
+ identity.rollout.path);
10
+ }
11
+ export function codexIdentityVerifiesLifecyclePostcondition(input) {
12
+ return classifyCodexLifecyclePostcondition(input) !== "invalid";
13
+ }
14
+ export function classifyCodexLifecyclePostcondition(input) {
15
+ if (!input.observationSucceeded ||
16
+ !isExactNativeThreadId(input.parsedNativeThreadId)) {
17
+ return "invalid";
18
+ }
19
+ if (input.observedIdentity === undefined) {
20
+ // A clean no-rollout observation is valid only immediately after /clear;
21
+ // exact resume must open and bind the requested historical rollout.
22
+ return input.operation === "new_thread" ? "no_rollout" : "invalid";
23
+ }
24
+ if (input.observedIdentity.sessionId.toLowerCase() ===
25
+ input.parsedNativeThreadId.toLowerCase() &&
26
+ hasStrongCodexLifecycleIdentity(input.observedIdentity)) {
27
+ return "matching_after";
28
+ }
29
+ if (input.operation === "new_thread" &&
30
+ input.beforeIdentity &&
31
+ input.parsedNativeThreadId.toLowerCase() !==
32
+ input.beforeIdentity.sessionId.toLowerCase() &&
33
+ sameStrongCodexLifecycleIdentity(input.observedIdentity, input.beforeIdentity)) {
34
+ // Codex 0.146.x can keep the before-thread rollout FD open after /clear
35
+ // even though a fresh /status card already proves a distinct current UUID.
36
+ // The stale descriptor is useful process-incarnation evidence only; callers
37
+ // must never attach its rollout tuple to the new UUID.
38
+ return "lingering_before";
39
+ }
40
+ return "invalid";
41
+ }
42
+ function sameStrongCodexLifecycleIdentity(left, right) {
43
+ return hasStrongCodexLifecycleIdentity(left) &&
44
+ hasStrongCodexLifecycleIdentity(right) &&
45
+ left.sessionId.toLowerCase() === right.sessionId.toLowerCase() &&
46
+ left.processUuid === right.processUuid &&
47
+ left.processBirth === right.processBirth &&
48
+ left.rollout?.fd === right.rollout?.fd &&
49
+ left.rollout?.device === right.rollout?.device &&
50
+ left.rollout?.inode === right.rollout?.inode &&
51
+ left.rollout?.path === right.rollout?.path;
52
+ }
53
+ export function isFreshCodexPostProbeScreen(input) {
54
+ return Boolean(input.probeSent &&
55
+ input.screenDigest &&
56
+ input.postProbeBaselineDigest &&
57
+ input.screenDigest !== input.postProbeBaselineDigest);
58
+ }
59
+ /**
60
+ * Resume is permitted only for a free historical native thread. A first-class
61
+ * Session is reusable after it was explicitly detached. A still-bound record
62
+ * is also selectable when its recorded process is conclusively no longer
63
+ * alive; the resume mutation must CAS-detach that stale binding before it
64
+ * prepares terminal input. Every unverifiable/live status remains
65
+ * authoritative and blocks implicit rebinding.
66
+ */
67
+ export function evaluateResumeCandidateAvailability(input) {
68
+ if (input.current) {
69
+ return { resumable: false, unavailableReason: "already_active" };
70
+ }
71
+ if (input.activeElsewhere) {
72
+ return {
73
+ resumable: false,
74
+ unavailableReason: "active_in_another_process"
75
+ };
76
+ }
77
+ if (input.activeOwnershipUnverifiable) {
78
+ return {
79
+ resumable: false,
80
+ unavailableReason: "active_thread_ownership_unverifiable"
81
+ };
82
+ }
83
+ if (input.managedSessionCount > 1) {
84
+ return {
85
+ resumable: false,
86
+ unavailableReason: "multiple_managed_sessions_reference_this_native_thread"
87
+ };
88
+ }
89
+ if (input.managedSessionCount === 1 &&
90
+ input.managedSessionStatus !== "detached" &&
91
+ !(input.managedSessionStatus === "bound" &&
92
+ input.managedSessionBindingInactive === true)) {
93
+ return {
94
+ resumable: false,
95
+ unavailableReason: `managed_session_${input.managedSessionStatus ?? "status_unavailable"}`
96
+ };
97
+ }
98
+ if (input.managedSessionCount === 1 &&
99
+ input.managedSessionWorkspaceMatches !== true) {
100
+ return {
101
+ resumable: false,
102
+ unavailableReason: "managed_session_workspace_mismatch"
103
+ };
104
+ }
105
+ if (input.archived) {
106
+ return { resumable: false, unavailableReason: "archived" };
107
+ }
108
+ if (!input.hasCandidateToken) {
109
+ return {
110
+ resumable: false,
111
+ unavailableReason: "candidate_token_unavailable"
112
+ };
113
+ }
114
+ return { resumable: true };
115
+ }
116
+ //# sourceMappingURL=native-thread-lifecycle-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-thread-lifecycle-policy.js","sourceRoot":"","sources":["../../src/native-thread-lifecycle-policy.ts"],"names":[],"mappings":"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"}
@@ -1,44 +1,77 @@
1
1
  export declare const AKK_CALLBACK_METHOD = "agent-knock-knock.callback";
2
+ type AkkCloseCommand = {
3
+ action: "close";
4
+ turnId: string;
5
+ reason: string;
6
+ } & ({
7
+ expectedMessageId?: undefined;
8
+ expectedTransitionId?: undefined;
9
+ } | {
10
+ expectedMessageId: string;
11
+ expectedTransitionId?: never;
12
+ } | {
13
+ expectedMessageId?: never;
14
+ expectedTransitionId: string;
15
+ });
2
16
  export type AkkCommand = {
3
17
  action: "help";
4
18
  } | {
5
19
  action: "doctor";
6
20
  } | {
7
21
  action: "list";
22
+ } | {
23
+ action: "list-resumable-threads";
24
+ terminalId: string;
25
+ } | {
26
+ action: "new-thread";
27
+ terminalId: string;
28
+ } | {
29
+ action: "resume-thread";
30
+ terminalId: string;
31
+ nativeThreadId?: string;
8
32
  } | {
9
33
  action: "status";
10
- conversationId?: string;
34
+ turnId?: string;
11
35
  } | {
12
36
  action: "send";
13
- conversationId: string;
37
+ selector: string;
38
+ message: string;
39
+ } | {
40
+ action: "respond";
41
+ turnId: string;
14
42
  message: string;
15
43
  } | {
16
44
  action: "approve";
17
- conversationId: string;
45
+ turnId: string;
18
46
  expectedApprovalFingerprint: string;
19
47
  } | {
20
48
  action: "cancel";
21
- conversationId: string;
49
+ turnId: string;
22
50
  } | {
23
51
  action: "renew";
24
- conversationId: string;
52
+ turnId: string;
25
53
  minutes?: string;
26
54
  } | {
27
55
  action: "retry-callback";
28
- conversationId: string;
29
- } | {
30
- action: "close";
31
- conversationId: string;
32
- reason: string;
33
- expectedMessageId?: string;
34
- } | {
56
+ turnId: string;
57
+ } | AkkCloseCommand | {
35
58
  action: "delegate";
36
59
  request: string;
37
60
  };
38
61
  export declare function parseAkkCommand(args: unknown): AkkCommand;
39
62
  export declare function akkUsageText(): string;
40
63
  export declare function formatAkkListCommandResult(result: Record<string, unknown>): string;
64
+ export declare function formatAkkRespondCommandResult(result: Record<string, unknown>): {
65
+ text: string;
66
+ isError: boolean;
67
+ };
68
+ export declare function formatAkkThreadsCommandResult(result: Record<string, unknown>): string;
69
+ export declare function formatAkkThreadTransitionCommandResult(result: Record<string, unknown>): string;
70
+ export declare function isAkkThreadTransitionSuccess(result: unknown): boolean;
41
71
  export declare function buildAkkCommandCliArgs(command: AkkCommand, config: Record<string, unknown>, context?: {
42
72
  sessionKey?: unknown;
73
+ expectedBindingToken?: unknown;
74
+ candidateToken?: unknown;
43
75
  }): string[] | undefined;
44
76
  export declare function resolvePluginStoreDir(config: Record<string, unknown>, gatewayCwd?: string): string | undefined;
77
+ export {};