@simonepri/refined-antigravity-acp 0.2.0 → 1.0.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 (180) hide show
  1. package/dist/bin/cli.js +2 -51
  2. package/dist/bin/cli.js.map +1 -1
  3. package/dist/src/cli.d.ts +2 -0
  4. package/dist/src/cli.d.ts.map +1 -0
  5. package/dist/src/cli.js +44 -0
  6. package/dist/src/cli.js.map +1 -0
  7. package/dist/src/{command.d.ts → core/command.d.ts} +4 -0
  8. package/dist/src/core/command.d.ts.map +1 -0
  9. package/dist/src/{command.js → core/command.js} +27 -11
  10. package/dist/src/core/command.js.map +1 -0
  11. package/dist/src/core/pipeline.d.ts +20 -0
  12. package/dist/src/core/pipeline.d.ts.map +1 -0
  13. package/dist/src/core/pipeline.js +94 -0
  14. package/dist/src/core/pipeline.js.map +1 -0
  15. package/dist/src/core/session-cache.d.ts +12 -0
  16. package/dist/src/core/session-cache.d.ts.map +1 -0
  17. package/dist/src/core/session-cache.js +85 -0
  18. package/dist/src/core/session-cache.js.map +1 -0
  19. package/dist/src/core/supervisor.d.ts +90 -0
  20. package/dist/src/core/supervisor.d.ts.map +1 -0
  21. package/dist/src/core/supervisor.js +582 -0
  22. package/dist/src/core/supervisor.js.map +1 -0
  23. package/dist/src/core/telemetry.d.ts +23 -0
  24. package/dist/src/core/telemetry.d.ts.map +1 -0
  25. package/dist/src/core/telemetry.js +75 -0
  26. package/dist/src/core/telemetry.js.map +1 -0
  27. package/dist/src/core/transport.d.ts +7 -0
  28. package/dist/src/core/transport.d.ts.map +1 -0
  29. package/dist/src/core/transport.js +37 -0
  30. package/dist/src/core/transport.js.map +1 -0
  31. package/dist/src/core/types.d.ts +293 -0
  32. package/dist/src/core/types.d.ts.map +1 -0
  33. package/dist/src/core/types.js +78 -0
  34. package/dist/src/core/types.js.map +1 -0
  35. package/dist/src/fixes/active-turn-collision/index.d.ts +27 -0
  36. package/dist/src/fixes/active-turn-collision/index.d.ts.map +1 -0
  37. package/dist/src/fixes/active-turn-collision/index.js +117 -0
  38. package/dist/src/fixes/active-turn-collision/index.js.map +1 -0
  39. package/dist/src/fixes/cancellation-leak/index.d.ts +17 -0
  40. package/dist/src/fixes/cancellation-leak/index.d.ts.map +1 -0
  41. package/dist/src/fixes/cancellation-leak/index.js +57 -0
  42. package/dist/src/fixes/cancellation-leak/index.js.map +1 -0
  43. package/dist/src/fixes/dangling-tool-calls/index.d.ts +32 -0
  44. package/dist/src/fixes/dangling-tool-calls/index.d.ts.map +1 -0
  45. package/dist/src/fixes/dangling-tool-calls/index.js +188 -0
  46. package/dist/src/fixes/dangling-tool-calls/index.js.map +1 -0
  47. package/dist/src/fixes/dropped-history-chunks/index.d.ts +47 -0
  48. package/dist/src/fixes/dropped-history-chunks/index.d.ts.map +1 -0
  49. package/dist/src/fixes/dropped-history-chunks/index.js +202 -0
  50. package/dist/src/fixes/dropped-history-chunks/index.js.map +1 -0
  51. package/dist/src/fixes/flattened-model-efforts/index.d.ts +39 -0
  52. package/dist/src/fixes/flattened-model-efforts/index.d.ts.map +1 -0
  53. package/dist/src/fixes/flattened-model-efforts/index.js +306 -0
  54. package/dist/src/fixes/flattened-model-efforts/index.js.map +1 -0
  55. package/dist/src/fixes/index.d.ts +25 -0
  56. package/dist/src/fixes/index.d.ts.map +1 -0
  57. package/dist/src/fixes/index.js +61 -0
  58. package/dist/src/fixes/index.js.map +1 -0
  59. package/dist/src/fixes/malformed-stream-syntax/index.d.ts +44 -0
  60. package/dist/src/fixes/malformed-stream-syntax/index.d.ts.map +1 -0
  61. package/dist/src/fixes/malformed-stream-syntax/index.js +346 -0
  62. package/dist/src/fixes/malformed-stream-syntax/index.js.map +1 -0
  63. package/dist/src/fixes/missing-localharness/index.d.ts +20 -0
  64. package/dist/src/fixes/missing-localharness/index.d.ts.map +1 -0
  65. package/dist/src/fixes/missing-localharness/index.js +103 -0
  66. package/dist/src/fixes/missing-localharness/index.js.map +1 -0
  67. package/dist/src/fixes/missing-question-fallback/index.d.ts +30 -0
  68. package/dist/src/fixes/missing-question-fallback/index.d.ts.map +1 -0
  69. package/dist/src/fixes/missing-question-fallback/index.js +119 -0
  70. package/dist/src/fixes/missing-question-fallback/index.js.map +1 -0
  71. package/dist/src/fixes/missing-slash-skills/index.d.ts +17 -0
  72. package/dist/src/fixes/missing-slash-skills/index.d.ts.map +1 -0
  73. package/dist/src/fixes/missing-slash-skills/index.js +107 -0
  74. package/dist/src/fixes/missing-slash-skills/index.js.map +1 -0
  75. package/dist/src/{skills.d.ts → fixes/missing-slash-skills/skills.d.ts} +2 -1
  76. package/dist/src/fixes/missing-slash-skills/skills.d.ts.map +1 -0
  77. package/dist/src/fixes/missing-slash-skills/skills.js +199 -0
  78. package/dist/src/fixes/missing-slash-skills/skills.js.map +1 -0
  79. package/dist/src/fixes/missing-system-prompt/index.d.ts +19 -0
  80. package/dist/src/fixes/missing-system-prompt/index.d.ts.map +1 -0
  81. package/dist/src/fixes/missing-system-prompt/index.js +118 -0
  82. package/dist/src/fixes/missing-system-prompt/index.js.map +1 -0
  83. package/dist/src/fixes/missing-usage-metrics/index.d.ts +26 -0
  84. package/dist/src/fixes/missing-usage-metrics/index.d.ts.map +1 -0
  85. package/dist/src/fixes/missing-usage-metrics/index.js +132 -0
  86. package/dist/src/fixes/missing-usage-metrics/index.js.map +1 -0
  87. package/dist/src/fixes/noisy-stderr-logs/index.d.ts +15 -0
  88. package/dist/src/fixes/noisy-stderr-logs/index.d.ts.map +1 -0
  89. package/dist/src/fixes/noisy-stderr-logs/index.js +23 -0
  90. package/dist/src/fixes/noisy-stderr-logs/index.js.map +1 -0
  91. package/dist/src/fixes/non-canonical-mode-ids/index.d.ts +26 -0
  92. package/dist/src/fixes/non-canonical-mode-ids/index.d.ts.map +1 -0
  93. package/dist/src/fixes/non-canonical-mode-ids/index.js +47 -0
  94. package/dist/src/fixes/non-canonical-mode-ids/index.js.map +1 -0
  95. package/dist/src/fixes/orphaned-checkpoints/index.d.ts +31 -0
  96. package/dist/src/fixes/orphaned-checkpoints/index.d.ts.map +1 -0
  97. package/dist/src/fixes/orphaned-checkpoints/index.js +82 -0
  98. package/dist/src/fixes/orphaned-checkpoints/index.js.map +1 -0
  99. package/dist/src/fixes/silent-background-tasks/index.d.ts +66 -0
  100. package/dist/src/fixes/silent-background-tasks/index.d.ts.map +1 -0
  101. package/dist/src/fixes/silent-background-tasks/index.js +491 -0
  102. package/dist/src/fixes/silent-background-tasks/index.js.map +1 -0
  103. package/dist/src/{mcp-proxy.d.ts → fixes/stale-mcp-endpoints/index.d.ts} +31 -4
  104. package/dist/src/fixes/stale-mcp-endpoints/index.d.ts.map +1 -0
  105. package/dist/src/{mcp-proxy.js → fixes/stale-mcp-endpoints/index.js} +162 -14
  106. package/dist/src/fixes/stale-mcp-endpoints/index.js.map +1 -0
  107. package/dist/src/fixes/subagent-hang/index.d.ts +2 -0
  108. package/dist/src/fixes/subagent-hang/index.d.ts.map +1 -0
  109. package/dist/src/fixes/subagent-hang/index.js +2 -0
  110. package/dist/src/fixes/subagent-hang/index.js.map +1 -0
  111. package/dist/src/fixes/subagent-hang/subagent-hang.d.ts +43 -0
  112. package/dist/src/fixes/subagent-hang/subagent-hang.d.ts.map +1 -0
  113. package/dist/src/fixes/subagent-hang/subagent-hang.js +114 -0
  114. package/dist/src/fixes/subagent-hang/subagent-hang.js.map +1 -0
  115. package/dist/src/index.d.ts +27 -0
  116. package/dist/src/index.d.ts.map +1 -0
  117. package/dist/src/index.js +43 -0
  118. package/dist/src/index.js.map +1 -0
  119. package/dist/src/lib/protobuf.d.ts +9 -0
  120. package/dist/src/lib/protobuf.d.ts.map +1 -0
  121. package/dist/src/lib/protobuf.js +89 -0
  122. package/dist/src/lib/protobuf.js.map +1 -0
  123. package/package.json +22 -7
  124. package/readme.md +147 -141
  125. package/assets/icon.svg +0 -3
  126. package/build/paseo/assets/icon.svg +0 -3
  127. package/build/paseo/assets/logo.svg +0 -62
  128. package/build/paseo/index.server.ts +0 -9
  129. package/build/paseo/paseo-plugin.json +0 -7
  130. package/build/paseo/server/agy-patch.ts +0 -445
  131. package/build/paseo/server/auth.ts +0 -122
  132. package/build/paseo/server/command.ts +0 -92
  133. package/build/paseo/server/connector.ts +0 -1371
  134. package/build/paseo/server/history.ts +0 -157
  135. package/build/paseo/server/mcp-proxy.ts +0 -375
  136. package/build/paseo/server/provider.ts +0 -37
  137. package/build/paseo/server/sanitize.ts +0 -286
  138. package/build/paseo/server/skills.ts +0 -183
  139. package/build/paseo/server/steering.ts +0 -199
  140. package/dist/index.server.d.ts +0 -4
  141. package/dist/index.server.d.ts.map +0 -1
  142. package/dist/index.server.js +0 -7
  143. package/dist/index.server.js.map +0 -1
  144. package/dist/src/agy-patch.d.ts +0 -65
  145. package/dist/src/agy-patch.d.ts.map +0 -1
  146. package/dist/src/agy-patch.js +0 -351
  147. package/dist/src/agy-patch.js.map +0 -1
  148. package/dist/src/auth.d.ts +0 -27
  149. package/dist/src/auth.d.ts.map +0 -1
  150. package/dist/src/auth.js +0 -113
  151. package/dist/src/auth.js.map +0 -1
  152. package/dist/src/command.d.ts.map +0 -1
  153. package/dist/src/command.js.map +0 -1
  154. package/dist/src/connector.d.ts +0 -187
  155. package/dist/src/connector.d.ts.map +0 -1
  156. package/dist/src/connector.js +0 -1127
  157. package/dist/src/connector.js.map +0 -1
  158. package/dist/src/history.d.ts +0 -12
  159. package/dist/src/history.d.ts.map +0 -1
  160. package/dist/src/history.js +0 -152
  161. package/dist/src/history.js.map +0 -1
  162. package/dist/src/mcp-proxy.d.ts.map +0 -1
  163. package/dist/src/mcp-proxy.js.map +0 -1
  164. package/dist/src/provider.d.ts +0 -11
  165. package/dist/src/provider.d.ts.map +0 -1
  166. package/dist/src/provider.js +0 -31
  167. package/dist/src/provider.js.map +0 -1
  168. package/dist/src/sanitize.d.ts +0 -29
  169. package/dist/src/sanitize.d.ts.map +0 -1
  170. package/dist/src/sanitize.js +0 -237
  171. package/dist/src/sanitize.js.map +0 -1
  172. package/dist/src/skills.d.ts.map +0 -1
  173. package/dist/src/skills.js +0 -140
  174. package/dist/src/skills.js.map +0 -1
  175. package/dist/src/steering.d.ts +0 -30
  176. package/dist/src/steering.d.ts.map +0 -1
  177. package/dist/src/steering.js +0 -174
  178. package/dist/src/steering.js.map +0 -1
  179. package/paseo-plugin.json +0 -8
  180. package/scripts/build-paseo.js +0 -60
@@ -1 +0,0 @@
1
- {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/skills.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAiED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAsBvE;AAED,wBAAgB,iBAAiB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAoBxD;AAED,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAkBzE;AAED,wBAAgB,eAAe,CAC7B,gBAAgB,EAAE,gBAAgB,EAAE,GAAG,SAAS,EAChD,GAAG,CAAC,EAAE,MAAM,GACX,gBAAgB,EAAE,CAapB;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAkBxE"}
@@ -1,140 +0,0 @@
1
- import { existsSync, readdirSync, readFileSync } from "node:fs";
2
- import os from "node:os";
3
- import path from "node:path";
4
- function unquote(val) {
5
- const trimmed = val.trim();
6
- if ((trimmed.startsWith('"') && trimmed.endsWith('"')) ||
7
- (trimmed.startsWith("'") && trimmed.endsWith("'"))) {
8
- return trimmed.slice(1, -1).replace(/''/g, "'");
9
- }
10
- const commentIdx = trimmed.search(/\s+#/);
11
- return commentIdx !== -1 ? trimmed.slice(0, commentIdx).trim() : trimmed;
12
- }
13
- function parseInvocable(val) {
14
- const v = unquote(val).toLowerCase();
15
- return v !== "false" && v !== "no" && v !== "0";
16
- }
17
- function parseDescription(rest, lines, i) {
18
- if (rest === ">" || rest === ">-" || rest === "|" || rest === "|-") {
19
- const block = [];
20
- let idx = i + 1;
21
- while (idx < lines.length && (/^\s+/.test(lines[idx]) || lines[idx].trim().length === 0)) {
22
- block.push(lines[idx].trim());
23
- idx++;
24
- }
25
- const text = rest.startsWith(">") ? block.join(" ") : block.join("\n").trim();
26
- return { desc: text, nextIndex: idx - 1 };
27
- }
28
- return { desc: unquote(rest), nextIndex: i };
29
- }
30
- function parseFrontmatter(frontmatter) {
31
- const lines = frontmatter.split(/\r?\n/);
32
- let name;
33
- let description;
34
- let userInvocable = true;
35
- for (let i = 0; i < lines.length; i++) {
36
- const line = lines[i];
37
- const nameMatch = line.match(/^name:\s*(.*)$/);
38
- if (nameMatch)
39
- name = unquote(nameMatch[1]);
40
- const invocableMatch = line.match(/^(?:user-invocable|user_invocable):\s*(.*)$/);
41
- if (invocableMatch)
42
- userInvocable = parseInvocable(invocableMatch[1]);
43
- const descMatch = line.match(/^description:\s*(.*)$/);
44
- if (descMatch) {
45
- const parsed = parseDescription(descMatch[1].trim(), lines, i);
46
- description = parsed.desc;
47
- i = parsed.nextIndex;
48
- }
49
- }
50
- return { name, description, userInvocable };
51
- }
52
- export function parseSkillFile(filePath) {
53
- if (!existsSync(filePath))
54
- return null;
55
- try {
56
- const content = readFileSync(filePath, "utf-8");
57
- const fmMatch = content.match(/^---\r?\n([\s\S]*?)\r?\n(?:---|\.\.\.)(?:\r?\n|$)([\s\S]*)$/);
58
- const meta = fmMatch ? parseFrontmatter(fmMatch[1]) : { userInvocable: true };
59
- const instructions = fmMatch ? fmMatch[2].trim() : content;
60
- const fallbackName = path.basename(path.dirname(filePath));
61
- return {
62
- name: meta.name && meta.name.length > 0 ? meta.name : fallbackName,
63
- description: meta.description && meta.description.length > 0
64
- ? meta.description
65
- : `Skill: ${fallbackName}`,
66
- instructions,
67
- userInvocable: meta.userInvocable,
68
- filePath,
69
- };
70
- }
71
- catch {
72
- return null;
73
- }
74
- }
75
- export function resolveSkillRoots(cwd) {
76
- const candidates = [];
77
- if (cwd) {
78
- candidates.push(path.join(cwd, ".agents/skills"), path.join(cwd, ".gemini/skills"), path.join(cwd, ".codex/skills"), path.join(cwd, "skills"));
79
- }
80
- const home = os.homedir();
81
- candidates.push(path.join(home, ".gemini/antigravity-cli/skills"), path.join(home, ".gemini/config/skills"), path.join(home, ".gemini/skills"), path.join(home, ".agents/skills"), path.join(home, ".claude/skills"), path.join(home, ".codex/skills"));
82
- return Array.from(new Set(candidates.filter((dir) => existsSync(dir))));
83
- }
84
- export function discoverSkills(cwd) {
85
- const roots = resolveSkillRoots(cwd);
86
- const skills = new Map();
87
- for (const root of roots) {
88
- try {
89
- for (const entry of readdirSync(root, { withFileTypes: true })) {
90
- if (!entry.isDirectory() && !entry.isSymbolicLink())
91
- continue;
92
- const skill = parseSkillFile(path.join(root, entry.name, "SKILL.md"));
93
- if (skill && !skills.has(skill.name)) {
94
- skills.set(skill.name, skill);
95
- }
96
- }
97
- }
98
- catch {
99
- // Ignore unreadable dirs
100
- }
101
- }
102
- return skills;
103
- }
104
- export function augmentCommands(existingCommands, cwd) {
105
- const result = new Map();
106
- if (Array.isArray(existingCommands)) {
107
- for (const cmd of existingCommands) {
108
- if (cmd?.name)
109
- result.set(cmd.name, cmd);
110
- }
111
- }
112
- for (const skill of discoverSkills(cwd).values()) {
113
- if (skill.userInvocable && !result.has(skill.name)) {
114
- result.set(skill.name, { name: skill.name, description: skill.description });
115
- }
116
- }
117
- return Array.from(result.values());
118
- }
119
- export function expandSkillInvocation(text, cwd) {
120
- const trimmed = text.trim();
121
- if (!trimmed.startsWith("/"))
122
- return text;
123
- const match = trimmed.match(/^\/([a-zA-Z0-9_-]+)(?:\s+([\s\S]*))?$/);
124
- if (!match)
125
- return text;
126
- const [_, commandName, rawArgs] = match;
127
- const args = rawArgs ?? "";
128
- const skill = discoverSkills(cwd).get(commandName);
129
- if (!skill)
130
- return text;
131
- let expanded = skill.instructions;
132
- if (expanded.includes("$ARGUMENTS")) {
133
- expanded = expanded.replaceAll("$ARGUMENTS", args);
134
- }
135
- else if (args.trim().length > 0) {
136
- expanded = `${expanded}\n\n**Arguments:** ${args}`;
137
- }
138
- return `[Skill: ${skill.name}]\n${expanded}\n[/Skill: ${skill.name}]`;
139
- }
140
- //# sourceMappingURL=skills.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/skills.ts"],"names":[],"mappings":"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"}
@@ -1,30 +0,0 @@
1
- import type { ProviderConnectRequest, ProviderConnection, ProviderEvent, ProviderInput } from "@getpaseo/plugin/server/provider";
2
- /**
3
- * Connection wrapper that decorates a base ProviderConnection with:
4
- * 1. Mid-turn steering (`prompt.steer`)
5
- * 2. Slash skill command advertising (`session.commands`)
6
- * 3. Slash skill expansion on prompt submission
7
- * 4. Automatic conversation history replay from Antigravity SQLite on session reload
8
- */
9
- export declare class SteeringConnection implements ProviderConnection {
10
- private readonly base;
11
- private readonly request;
12
- readonly version: number;
13
- readonly capabilities: readonly string[];
14
- private readonly sessionCwds;
15
- private readonly pendingSteers;
16
- private readonly replaySessions;
17
- private readonly listeners;
18
- private readonly unbindBase;
19
- constructor(base: ProviderConnection, request: ProviderConnectRequest);
20
- private emitSessionSkills;
21
- private replaySessionHistory;
22
- private handleSessionOpened;
23
- private handleBaseEvent;
24
- private emit;
25
- private handleSteerPrompt;
26
- send(input: ProviderInput): Promise<void>;
27
- onEvent(listener: (event: ProviderEvent) => void): () => void;
28
- close(): Promise<void>;
29
- }
30
- //# sourceMappingURL=steering.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"steering.d.ts","sourceRoot":"","sources":["../../src/steering.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,EACb,aAAa,EACd,MAAM,kCAAkC,CAAC;AA4C1C;;;;;;GAMG;AACH,qBAAa,kBAAmB,YAAW,kBAAkB;IAWzD,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAX1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAEzC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6B;IACzD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IACnD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6C;IACvE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;gBAGrB,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE,sBAAsB;IAUlD,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,oBAAoB;IAgB5B,OAAO,CAAC,mBAAmB;IAmB3B,OAAO,CAAC,eAAe;IAcvB,OAAO,CAAC,IAAI;IAMZ,OAAO,CAAC,iBAAiB;IAUnB,IAAI,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B/C,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,MAAM,IAAI;IAOvD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ7B"}
@@ -1,174 +0,0 @@
1
- import { readConversationHistory } from "./history.js";
2
- import { formatSteeringPrompt } from "./sanitize.js";
3
- import { augmentCommands, expandSkillInvocation } from "./skills.js";
4
- function transformPromptInput(input, isSteerReplacement, cwd) {
5
- if (input.type !== "session.prompt" || input.prompt.input.type !== "message") {
6
- return input;
7
- }
8
- // Only the first text part carries the steering marker; prefixing every part would
9
- // repeat it throughout a multi-part prompt.
10
- let markerPending = isSteerReplacement;
11
- const content = input.prompt.input.content.map((part) => {
12
- if (part.type !== "text")
13
- return part;
14
- let text = expandSkillInvocation(part.text, cwd);
15
- if (markerPending) {
16
- text = formatSteeringPrompt(text);
17
- markerPending = false;
18
- }
19
- return { ...part, text };
20
- });
21
- return {
22
- ...input,
23
- prompt: {
24
- ...input.prompt,
25
- input: { ...input.prompt.input, content },
26
- },
27
- };
28
- }
29
- function readNativeSessionId(persistence) {
30
- if (!persistence || typeof persistence !== "object" || Array.isArray(persistence)) {
31
- return null;
32
- }
33
- const data = persistence.data;
34
- if (!data || typeof data !== "object" || Array.isArray(data))
35
- return null;
36
- const sessionId = data.sessionId;
37
- return typeof sessionId === "string" ? sessionId : null;
38
- }
39
- /**
40
- * Connection wrapper that decorates a base ProviderConnection with:
41
- * 1. Mid-turn steering (`prompt.steer`)
42
- * 2. Slash skill command advertising (`session.commands`)
43
- * 3. Slash skill expansion on prompt submission
44
- * 4. Automatic conversation history replay from Antigravity SQLite on session reload
45
- */
46
- export class SteeringConnection {
47
- base;
48
- request;
49
- version;
50
- capabilities;
51
- sessionCwds = new Map();
52
- pendingSteers = new Set();
53
- replaySessions = new Set();
54
- listeners = new Set();
55
- unbindBase;
56
- constructor(base, request) {
57
- this.base = base;
58
- this.request = request;
59
- this.version = base.version;
60
- this.capabilities = request.capabilities.includes("prompt.steer")
61
- ? Array.from(new Set([...base.capabilities, "prompt.steer"]))
62
- : base.capabilities;
63
- this.unbindBase = this.base.onEvent((event) => this.handleBaseEvent(event));
64
- }
65
- emitSessionSkills(sessionId, cwd) {
66
- try {
67
- const commands = augmentCommands(undefined, cwd);
68
- if (commands.length > 0) {
69
- this.emit({ type: "session.commands", sessionId, commands });
70
- }
71
- }
72
- catch (err) {
73
- console.error("[paseo-antigravity] Failed to emit session.commands on session.opened:", err);
74
- }
75
- }
76
- replaySessionHistory(sessionId, nativeSessionId) {
77
- try {
78
- const history = readConversationHistory(nativeSessionId);
79
- for (const entry of history) {
80
- this.emit({
81
- type: "timeline.item",
82
- sessionId,
83
- item: entry.item,
84
- timestamp: entry.timestamp,
85
- });
86
- }
87
- }
88
- catch (err) {
89
- console.error(`[paseo-antigravity] Failed to replay history for ${sessionId}:`, err);
90
- }
91
- }
92
- handleSessionOpened(event) {
93
- const cwd = event.cwd ?? process.cwd();
94
- this.sessionCwds.set(event.sessionId, cwd);
95
- const sessionCaps = this.request.capabilities.includes("prompt.steer")
96
- ? Array.from(new Set([...event.capabilities, "prompt.steer"]))
97
- : event.capabilities;
98
- this.emit({ ...event, capabilities: sessionCaps });
99
- if (this.replaySessions.delete(event.sessionId)) {
100
- const nativeId = readNativeSessionId(event.persistence);
101
- if (nativeId) {
102
- this.replaySessionHistory(event.sessionId, nativeId);
103
- }
104
- }
105
- this.emitSessionSkills(event.sessionId, cwd);
106
- }
107
- handleBaseEvent(event) {
108
- if (event.type === "session.opened") {
109
- this.handleSessionOpened(event);
110
- return;
111
- }
112
- if (event.type === "session.commands") {
113
- const cwd = this.sessionCwds.get(event.sessionId);
114
- const commands = augmentCommands(event.commands, cwd);
115
- this.emit({ ...event, commands });
116
- return;
117
- }
118
- this.emit(event);
119
- }
120
- emit(event) {
121
- for (const listener of this.listeners) {
122
- listener(event);
123
- }
124
- }
125
- handleSteerPrompt(sessionId, clientMessageId) {
126
- this.pendingSteers.add(sessionId);
127
- this.emit({
128
- type: "session.prompt_result",
129
- sessionId,
130
- clientMessageId,
131
- result: { type: "completed" },
132
- });
133
- }
134
- async send(input) {
135
- if (input.type === "session.open") {
136
- if (input.history === "replay") {
137
- this.replaySessions.add(input.sessionId);
138
- }
139
- }
140
- if (input.type === "session.prompt") {
141
- if (input.prompt.delivery === "steer") {
142
- this.handleSteerPrompt(input.sessionId, input.prompt.clientMessageId);
143
- return;
144
- }
145
- // Paseo answers a steer by cancelling the turn and re-dispatching the text as a
146
- // normal prompt. `pendingSteers` is how we recognise that replacement so it can be
147
- // marked as a mid-turn interruption rather than a fresh instruction.
148
- const isReplacement = this.pendingSteers.delete(input.sessionId);
149
- const cwd = this.sessionCwds.get(input.sessionId);
150
- input = transformPromptInput(input, isReplacement, cwd);
151
- }
152
- if (input.type === "session.close") {
153
- this.pendingSteers.delete(input.sessionId);
154
- this.replaySessions.delete(input.sessionId);
155
- this.sessionCwds.delete(input.sessionId);
156
- }
157
- return this.base.send(input);
158
- }
159
- onEvent(listener) {
160
- this.listeners.add(listener);
161
- return () => {
162
- this.listeners.delete(listener);
163
- };
164
- }
165
- async close() {
166
- this.pendingSteers.clear();
167
- this.replaySessions.clear();
168
- this.sessionCwds.clear();
169
- this.listeners.clear();
170
- this.unbindBase();
171
- return this.base.close();
172
- }
173
- }
174
- //# sourceMappingURL=steering.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"steering.js","sourceRoot":"","sources":["../../src/steering.ts"],"names":[],"mappings":"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"}
package/paseo-plugin.json DELETED
@@ -1,8 +0,0 @@
1
- {
2
- "id": "refined-antigravity-acp",
3
- "requirements": {
4
- "paseo": "^0.9.0"
5
- },
6
- "description": "Hardened wrapper for Google Antigravity ACP with bugfixes, hang mitigation, and steering.",
7
- "build": [["node", "scripts/build-paseo.js", "--install-root"]]
8
- }
@@ -1,60 +0,0 @@
1
- #!/usr/bin/env node
2
- import fs from "node:fs";
3
- import path from "node:path";
4
- import { fileURLToPath } from "node:url";
5
-
6
- const __filename = fileURLToPath(import.meta.url);
7
- const __dirname = path.dirname(__filename);
8
- const rootDir = path.resolve(__dirname, "..");
9
-
10
- const buildDir = path.join(rootDir, "build", "paseo");
11
- const serverDir = path.join(buildDir, "server");
12
- const assetsDir = path.join(buildDir, "assets");
13
-
14
- // Ensure clean directories
15
- fs.rmSync(buildDir, { recursive: true, force: true });
16
- fs.mkdirSync(serverDir, { recursive: true });
17
- fs.mkdirSync(assetsDir, { recursive: true });
18
-
19
- // Copy src/*.ts (excluding *.test.ts) to build/paseo/server/
20
- const srcDir = path.join(rootDir, "src");
21
- const srcFiles = fs.readdirSync(srcDir);
22
- for (const file of srcFiles) {
23
- if (file.endsWith(".ts") && !file.endsWith(".test.ts")) {
24
- fs.copyFileSync(path.join(srcDir, file), path.join(serverDir, file));
25
- }
26
- }
27
-
28
- // Copy assets/ to build/paseo/assets/
29
- const rootAssetsDir = path.join(rootDir, "assets");
30
- if (fs.existsSync(rootAssetsDir)) {
31
- const assetFiles = fs.readdirSync(rootAssetsDir);
32
- for (const file of assetFiles) {
33
- fs.copyFileSync(path.join(rootAssetsDir, file), path.join(assetsDir, file));
34
- }
35
- }
36
-
37
- // Read index.server.ts, rewrite ./src/ to ./server/, write to build/paseo/index.server.ts
38
- const rootIndexServer = path.join(rootDir, "index.server.ts");
39
- const indexServerContent = fs.readFileSync(rootIndexServer, "utf8");
40
- const rewrittenIndexServer = indexServerContent.replaceAll("./src/", "./server/");
41
- fs.writeFileSync(path.join(buildDir, "index.server.ts"), rewrittenIndexServer, "utf8");
42
-
43
- // Read root paseo-plugin.json, omit "build", write to build/paseo/paseo-plugin.json
44
- const rootManifestPath = path.join(rootDir, "paseo-plugin.json");
45
- const rootManifest = JSON.parse(fs.readFileSync(rootManifestPath, "utf8"));
46
- const { build: _ignoredBuild, ...paseoPluginJson } = rootManifest;
47
- fs.writeFileSync(
48
- path.join(buildDir, "paseo-plugin.json"),
49
- JSON.stringify(paseoPluginJson, null, 2) + "\n",
50
- "utf8",
51
- );
52
-
53
- // If --install-root is passed (used by root paseo-plugin.json build step on git/remote install),
54
- // also populate server/ and update index.server.ts at the install root so Paseo finds them.
55
- if (process.argv.includes("--install-root")) {
56
- const rootServerDir = path.join(rootDir, "server");
57
- fs.rmSync(rootServerDir, { recursive: true, force: true });
58
- fs.cpSync(serverDir, rootServerDir, { recursive: true });
59
- fs.writeFileSync(rootIndexServer, rewrittenIndexServer, "utf8");
60
- }