@vaclav-synacek/pi-coding-agent-termux 0.50.1-0 → 0.50.7-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 (96) hide show
  1. package/CHANGELOG.md +108 -1
  2. package/dist/cli/args.d.ts.map +1 -1
  3. package/dist/cli/args.js +1 -0
  4. package/dist/cli/args.js.map +1 -1
  5. package/dist/core/agent-session.d.ts +8 -0
  6. package/dist/core/agent-session.d.ts.map +1 -1
  7. package/dist/core/agent-session.js +29 -13
  8. package/dist/core/agent-session.js.map +1 -1
  9. package/dist/core/defaults.d.ts +3 -0
  10. package/dist/core/defaults.d.ts.map +1 -0
  11. package/dist/core/defaults.js +2 -0
  12. package/dist/core/defaults.js.map +1 -0
  13. package/dist/core/extensions/runner.d.ts +5 -0
  14. package/dist/core/extensions/runner.d.ts.map +1 -1
  15. package/dist/core/extensions/runner.js +12 -0
  16. package/dist/core/extensions/runner.js.map +1 -1
  17. package/dist/core/extensions/types.d.ts +3 -0
  18. package/dist/core/extensions/types.d.ts.map +1 -1
  19. package/dist/core/extensions/types.js.map +1 -1
  20. package/dist/core/model-registry.d.ts.map +1 -1
  21. package/dist/core/model-registry.js +6 -0
  22. package/dist/core/model-registry.js.map +1 -1
  23. package/dist/core/model-resolver.d.ts.map +1 -1
  24. package/dist/core/model-resolver.js +9 -6
  25. package/dist/core/model-resolver.js.map +1 -1
  26. package/dist/core/package-manager.d.ts.map +1 -1
  27. package/dist/core/package-manager.js +102 -20
  28. package/dist/core/package-manager.js.map +1 -1
  29. package/dist/core/prompt-templates.d.ts.map +1 -1
  30. package/dist/core/prompt-templates.js.map +1 -1
  31. package/dist/core/sdk.d.ts +1 -1
  32. package/dist/core/sdk.d.ts.map +1 -1
  33. package/dist/core/sdk.js +3 -2
  34. package/dist/core/sdk.js.map +1 -1
  35. package/dist/core/settings-manager.d.ts +11 -3
  36. package/dist/core/settings-manager.d.ts.map +1 -1
  37. package/dist/core/settings-manager.js +96 -16
  38. package/dist/core/settings-manager.js.map +1 -1
  39. package/dist/core/tools/path-utils.d.ts.map +1 -1
  40. package/dist/core/tools/path-utils.js +28 -3
  41. package/dist/core/tools/path-utils.js.map +1 -1
  42. package/dist/main.d.ts.map +1 -1
  43. package/dist/main.js +2 -1
  44. package/dist/main.js.map +1 -1
  45. package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
  46. package/dist/modes/interactive/components/config-selector.js +12 -1
  47. package/dist/modes/interactive/components/config-selector.js.map +1 -1
  48. package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
  49. package/dist/modes/interactive/components/custom-editor.js +2 -1
  50. package/dist/modes/interactive/components/custom-editor.js.map +1 -1
  51. package/dist/modes/interactive/components/daxnuts.d.ts +23 -0
  52. package/dist/modes/interactive/components/daxnuts.d.ts.map +1 -0
  53. package/dist/modes/interactive/components/daxnuts.js +140 -0
  54. package/dist/modes/interactive/components/daxnuts.js.map +1 -0
  55. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  56. package/dist/modes/interactive/components/footer.js +17 -13
  57. package/dist/modes/interactive/components/footer.js.map +1 -1
  58. package/dist/modes/interactive/components/index.d.ts +1 -0
  59. package/dist/modes/interactive/components/index.d.ts.map +1 -1
  60. package/dist/modes/interactive/components/index.js +1 -0
  61. package/dist/modes/interactive/components/index.js.map +1 -1
  62. package/dist/modes/interactive/components/settings-selector.d.ts +4 -2
  63. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  64. package/dist/modes/interactive/components/settings-selector.js +13 -1
  65. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  66. package/dist/modes/interactive/interactive-mode.d.ts +3 -0
  67. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  68. package/dist/modes/interactive/interactive-mode.js +81 -37
  69. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  70. package/dist/modes/rpc/rpc-client.d.ts +9 -1
  71. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  72. package/dist/modes/rpc/rpc-client.js +13 -0
  73. package/dist/modes/rpc/rpc-client.js.map +1 -1
  74. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  75. package/dist/modes/rpc/rpc-mode.js +45 -0
  76. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  77. package/dist/modes/rpc/rpc-types.d.ts +34 -0
  78. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  79. package/dist/modes/rpc/rpc-types.js.map +1 -1
  80. package/dist/utils/clipboard.d.ts.map +1 -1
  81. package/dist/utils/clipboard.js +4 -0
  82. package/dist/utils/clipboard.js.map +1 -1
  83. package/docs/extensions.md +12 -0
  84. package/docs/keybindings.md +7 -5
  85. package/docs/models.md +32 -0
  86. package/docs/providers.md +4 -1
  87. package/docs/rpc.md +62 -1
  88. package/docs/settings.md +1 -0
  89. package/examples/extensions/antigravity-image-gen.ts +1 -1
  90. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  91. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  92. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  93. package/examples/extensions/system-prompt-header.ts +17 -0
  94. package/examples/extensions/with-deps/package-lock.json +2 -2
  95. package/examples/extensions/with-deps/package.json +1 -1
  96. package/package.json +5 -4
package/docs/rpc.md CHANGED
@@ -154,6 +154,7 @@ Response:
154
154
  "followUpMode": "one-at-a-time",
155
155
  "sessionFile": "/path/to/session.jsonl",
156
156
  "sessionId": "abc123",
157
+ "sessionName": "my-feature-work",
157
158
  "autoCompactionEnabled": true,
158
159
  "messageCount": 5,
159
160
  "pendingMessageCount": 0
@@ -161,7 +162,7 @@ Response:
161
162
  }
162
163
  ```
163
164
 
164
- The `model` field is a full [Model](#model) object or `null`.
165
+ The `model` field is a full [Model](#model) object or `null`. The `sessionName` field is the display name set via `set_session_name`, or omitted if not set.
165
166
 
166
167
  #### get_messages
167
168
 
@@ -612,6 +613,66 @@ Response:
612
613
 
613
614
  Returns `{"text": null}` if no assistant messages exist.
614
615
 
616
+ #### set_session_name
617
+
618
+ Set a display name for the current session. The name appears in session listings and helps identify sessions.
619
+
620
+ ```json
621
+ {"type": "set_session_name", "name": "my-feature-work"}
622
+ ```
623
+
624
+ Response:
625
+ ```json
626
+ {
627
+ "type": "response",
628
+ "command": "set_session_name",
629
+ "success": true
630
+ }
631
+ ```
632
+
633
+ The current session name is available via `get_state` in the `sessionName` field.
634
+
635
+ ### Commands
636
+
637
+ #### get_commands
638
+
639
+ Get available commands (extension commands, prompt templates, and skills). These can be invoked via the `prompt` command by prefixing with `/`.
640
+
641
+ ```json
642
+ {"type": "get_commands"}
643
+ ```
644
+
645
+ Response:
646
+ ```json
647
+ {
648
+ "type": "response",
649
+ "command": "get_commands",
650
+ "success": true,
651
+ "data": {
652
+ "commands": [
653
+ {"name": "session-name", "description": "Set or clear session name", "source": "extension", "path": "/home/user/.pi/agent/extensions/session.ts"},
654
+ {"name": "fix-tests", "description": "Fix failing tests", "source": "template", "location": "project", "path": "/home/user/myproject/.pi/agent/prompts/fix-tests.md"},
655
+ {"name": "skill:brave-search", "description": "Web search via Brave API", "source": "skill", "location": "user", "path": "/home/user/.pi/agent/skills/brave-search/SKILL.md"}
656
+ ]
657
+ }
658
+ }
659
+ ```
660
+
661
+ Each command has:
662
+ - `name`: Command name (invoke with `/name`)
663
+ - `description`: Human-readable description (optional for extension commands)
664
+ - `source`: What kind of command:
665
+ - `"extension"`: Registered via `pi.registerCommand()` in an extension
666
+ - `"template"`: Loaded from a prompt template `.md` file
667
+ - `"skill"`: Loaded from a skill directory (name is prefixed with `skill:`)
668
+ - `location`: Where it was loaded from (optional, not present for extensions):
669
+ - `"user"`: User-level (`~/.pi/agent/`)
670
+ - `"project"`: Project-level (`./.pi/agent/`)
671
+ - `"path"`: Explicit path via CLI or settings
672
+ - `path`: Absolute file path to the command source (optional)
673
+
674
+ **Note**: Built-in TUI commands (`/settings`, `/hotkeys`, etc.) are not included. They are handled only in interactive mode and would not execute if sent via `prompt`.
675
+
615
676
  ## Events
616
677
 
617
678
  Events are streamed to stdout as JSON lines during agent operation. Events do NOT include an `id` field (only responses do).
package/docs/settings.md CHANGED
@@ -43,6 +43,7 @@ Edit directly or use `/settings` for common options.
43
43
  | `collapseChangelog` | boolean | `false` | Show condensed changelog after updates |
44
44
  | `doubleEscapeAction` | string | `"tree"` | Action for double-escape: `"tree"` or `"fork"` |
45
45
  | `editorPaddingX` | number | `0` | Horizontal padding for input editor (0-3) |
46
+ | `autocompleteMaxVisible` | number | `5` | Max visible items in autocomplete dropdown (3-20) |
46
47
  | `showHardwareCursor` | boolean | `false` | Show terminal cursor |
47
48
 
48
49
  ### Compaction
@@ -50,7 +50,7 @@ type SaveMode = (typeof SAVE_MODES)[number];
50
50
  const ANTIGRAVITY_ENDPOINT = "https://daily-cloudcode-pa.sandbox.googleapis.com";
51
51
 
52
52
  const ANTIGRAVITY_HEADERS = {
53
- "User-Agent": "antigravity/1.11.5 darwin/arm64",
53
+ "User-Agent": "antigravity/1.15.8 darwin/arm64",
54
54
  "X-Goog-Api-Client": "google-cloud-sdk vscode_cloudshelleditor/0.1",
55
55
  "Client-Metadata": JSON.stringify({
56
56
  ideType: "IDE_UNSPECIFIED",
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "pi-extension-custom-provider",
3
- "version": "1.1.1",
3
+ "version": "1.1.7",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "pi-extension-custom-provider",
9
- "version": "1.1.1",
9
+ "version": "1.1.7",
10
10
  "dependencies": {
11
11
  "@anthropic-ai/sdk": "^0.52.0"
12
12
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "pi-extension-custom-provider-anthropic",
3
3
  "private": true,
4
- "version": "1.1.1",
4
+ "version": "1.1.7",
5
5
  "type": "module",
6
6
  "scripts": {
7
7
  "clean": "echo 'nothing to clean'",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "pi-extension-custom-provider-gitlab-duo",
3
3
  "private": true,
4
- "version": "1.1.1",
4
+ "version": "1.1.7",
5
5
  "type": "module",
6
6
  "scripts": {
7
7
  "clean": "echo 'nothing to clean'",
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Displays a status widget showing the system prompt length.
3
+ *
4
+ * Demonstrates ctx.getSystemPrompt() for accessing the effective system prompt.
5
+ */
6
+ import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
7
+
8
+ export default function (pi: ExtensionAPI) {
9
+ pi.on("agent_start", (_event, ctx) => {
10
+ const prompt = ctx.getSystemPrompt();
11
+ ctx.ui.setStatus("system-prompt", `System: ${prompt.length} chars`);
12
+ });
13
+
14
+ pi.on("session_shutdown", (_event, ctx) => {
15
+ ctx.ui.setStatus("system-prompt", undefined);
16
+ });
17
+ }
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "pi-extension-with-deps",
3
- "version": "1.14.1",
3
+ "version": "1.14.7",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "pi-extension-with-deps",
9
- "version": "1.14.1",
9
+ "version": "1.14.7",
10
10
  "dependencies": {
11
11
  "ms": "^2.1.3"
12
12
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "pi-extension-with-deps",
3
3
  "private": true,
4
- "version": "1.14.1",
4
+ "version": "1.14.7",
5
5
  "type": "module",
6
6
  "scripts": {
7
7
  "clean": "echo 'nothing to clean'",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vaclav-synacek/pi-coding-agent-termux",
3
- "version": "0.50.1-0",
3
+ "version": "0.50.7-0",
4
4
  "description": "Termux port of pi-coding-agent - Coding agent CLI with read, bash, edit, write tools and session management",
5
5
  "type": "module",
6
6
  "piConfig": {
@@ -39,15 +39,16 @@
39
39
  },
40
40
  "dependencies": {
41
41
  "@mariozechner/jiti": "^2.6.2",
42
- "@mariozechner/pi-agent-core": "^0.50.1",
43
- "@mariozechner/pi-ai": "^0.50.1",
44
- "@mariozechner/pi-tui": "^0.50.1",
42
+ "@mariozechner/pi-agent-core": "^0.50.7",
43
+ "@mariozechner/pi-ai": "^0.50.7",
44
+ "@mariozechner/pi-tui": "^0.50.7",
45
45
  "@silvia-odwyer/photon-node": "^0.3.4",
46
46
  "chalk": "^5.5.0",
47
47
  "cli-highlight": "^2.1.11",
48
48
  "diff": "^8.0.2",
49
49
  "file-type": "^21.1.1",
50
50
  "glob": "^11.0.3",
51
+ "ignore": "^7.0.5",
51
52
  "marked": "^15.0.12",
52
53
  "minimatch": "^10.1.1",
53
54
  "proper-lockfile": "^4.1.2",