Commit Graph

2204 Commits

Author SHA1 Message Date
DeprecatedLuke 995b26b90f feat(task): add nested non-submodule repo support for isolation 2026-02-23 19:17:41 +00:00
DeprecatedLuke 86cd66b3d5 feat(task): add fuse-overlay isolation backend 2026-02-23 19:17:40 +00:00
can1357 90b2b881fc chore: bump version to 13.2.0 2026-02-23 17:14:05 +01:00
can1357 74344eca1b fix: corrected tool description normalization to prevent undefined field errors
- Added fallback empty string for undefined tool descriptions across all AI providers to prevent runtime errors.
- Made `description` field required in CustomTool interface and normalized tool descriptions in agent-loop.
- Refactored tool normalization in agent-loop by renaming `injectIntentIntoTools()` to `normalizeTools()` with conditional intent injection.
- Added comprehensive description metadata to todo-write tool schema fields for improved clarity.
2026-02-23 17:12:59 +01:00
can1357 49e40aca5c fix(settings): initialised all setting hooks on load
- Replaced hardcoded tab width update with a generic mechanism to trigger all registered setting hooks.
- Ensures all settings with associated hooks are properly configured during initialization.
2026-02-23 15:06:10 +01:00
can1357 d3575c752d feat(async): added job delivery acknowledgment
- Introduced mechanism to suppress future delivery attempts for acknowledged jobs.
- The AwaitTool acknowledges deliveries for jobs it finished awaiting.
- Prevents unnecessary retries and clears delivery queue for handled jobs.
2026-02-23 15:00:11 +01:00
can1357 4b60af5c47 feat(text-display): implemented configurable tab width
- Added a `display.tabWidth` setting to control default tab rendering.
- Integrated `.editorconfig` resolution for c ontext-aware tab indentation.
- Updated native text processing to use the resolved tab width for calculations.
- Improved tab visualization in diffs and other UI elements for consistency.
2026-02-23 15:00:06 +01:00
can1357 8f5e0c9785 chore: bump version to 13.1.2 2026-02-23 06:48:28 +01:00
Kyle Chen f613d190ac fix: close unclosed {{#if}} block and restore git section in custom-system-prompt
The {{#if contextFiles.length}} block (line 10) was never closed with
{{/if}}, causing Handlebars to throw 'if doesn't match ifAny' at
runtime when the template is compiled.

Additionally, the git version control section (git.isRepo guard with
branch, status, and commit history) was missing entirely, even though
the outer {{#ifAny contextFiles.length git.isRepo}} guard references it.

This fix:
- Adds the missing {{/if}} to close the contextFiles.length block
- Restores the git.isRepo conditional section for version control info
- Ensures </project> and {{/ifAny}} are properly positioned
2026-02-23 06:47:22 +01:00
can1357 6e596fbed9 feat(tools): removed timeout parameter from await tool for indefinite waiting
- Removed `timeout` parameter from await tool--tool now waits indefinitely until jobs complete or the call is aborted.
- Renamed `job_ids` parameter to `jobs` in await tool schema.
- Removed `timedOut` field from await tool result details.
- Simplified timeout logic by eliminating sleep-based polling in favor of indefinite waiting.
2026-02-23 02:35:27 +01:00
can1357 fea7cb734d chore: bump version to 13.1.1 2026-02-23 01:52:09 +01:00
can1357 90f68431bf Fix local URL resolution for bash destinations 2026-02-23 01:51:54 +01:00
can1357 b8a231f2d2 chore: bump version to 13.1.0 2026-02-23 01:44:28 +01:00
can1357 5696e9799a chore: renamed job polling tool to await
- Renamed `poll_jobs` tool to `await` for clarity.
- Updated all related files, prompts, and type definitions.
2026-02-23 01:44:03 +01:00
can1357 c5dafa28f5 docs(prompts): clarified task tool and system prompt documentation structure
- Restructured task tool documentation for clarity, moving parameter definitions into a dedicated section and consolidating guidance on context, assignments, and parallelization.
- Reformatted system prompt template to use markdown headings instead of XML tags for skills, preloaded skills, and rules sections.
2026-02-23 01:40:44 +01:00
can1357 ac76b6623e perf: accepting #142 with changes 2026-02-23 01:18:24 +01:00
can1357 330334b972 Deduplicate intent field description to save tokens
Move agent__intent description from per-tool JSON schema injection (repeated
once per tool) into a single conditional block in the system prompt template.
Token savings scale with tool count.

- agent-loop: remove description from intent schema injection
- system-prompt.md: add intentTracing/intentField template block
- sdk: compute intentField once, pass through to prompt builder
- system-prompt.ts: thread intentField option into template context
2026-02-23 01:05:48 +01:00
can1357 a96178494a refactor(coding-agent): restructured tool schemas for consistency and clarity
- Renamed `file` parameter to `path` in edit tool schemas and all test cases for consistency.
- Removed `file` property fallback from EditRenderArgs interface and path resolution methods.
- Refactored browser viewport schema to use snake_case `device_scale_factor` with explicit camelCase mapping for Puppeteer API.
- Added hashline edit rule requiring `end` tag to include closing braces/brackets when replacing blocks.
- Refactored INTENT_FIELD injection logic to conditionally reorder schema properties and update required array.
2026-02-23 00:23:53 +01:00
can1357 33235bbb6b chore: bump version to 13.0.2 2026-02-23 00:01:36 +01:00
can1357 801c13d141 fix(patch): corrected property access from text to lines in applyHashlineEdits
- Corrected property access from `result.text` to `result.lines` to match actual return type of `applyHashlineEdits()`.
2026-02-22 23:48:08 +01:00
can1357 0e1a4ef15a feat: strict mode + simplified hashline edit operations
- Consolidated `replace` operations and removed `insert`.
- Improved line hash collision resistance for symbol-only text.
2026-02-22 23:45:01 +01:00
can1357 768ee7a269 fix(coding-agent): corrected XML tag indent stripping to preserve nested tag whitespace
- Corrected XML tag indent stripping to only apply to top-level closing tags, preventing incorrect whitespace removal from nested tags.
- Implemented depth-aware tag tracking using a stack to distinguish top-level from nested XML elements.
- Updated formatting rule documentation to clarify that indent stripping applies only to top-level closing tags.
2026-02-22 19:59:57 +01:00
can1357 ad20818e35 chore: bump version to 13.0.1 2026-02-22 19:58:30 +01:00
can1357 399202b8d2 refactor(patch): antigravity friendly schema 2026-02-22 19:56:58 +01:00
can1357 c9d345369d chore: bump version to 13.0.0 2026-02-22 19:27:17 +01:00
can1357 ae07ab7e76 docs(patch): clarified examples 2026-02-22 19:26:40 +01:00
can1357 0d628857c1 refactor(patch): consolidated edits into replace op 2026-02-22 19:24:55 +01:00
can1357 0298a88601 feat(coding-agent): added in-memory todo phase management to ToolSession API
- Added getTodoPhases() and setTodoPhases() methods to ToolSession API for in-memory todo phase management.
- Added getLatestTodoPhasesFromEntries() export to retrieve todo phases from session history entries.
- Changed todo state management from file-based (todos.json) to in-memory session cache with automatic persistence.
- Changed todo phases to sync from session branch history during branching and rewriting operations.
- Removed file-based todo loading logic and replaced with session-based todo phase retrieval throughout codebase.
2026-02-22 19:11:24 +01:00
can1357 95ecf8ad1a refactor(coding-agent): simplified URL resolution and template formatting
- Removed try-catch wrapper around URL resolution in expandInternalUrls, allowing errors to propagate to caller.
- Simplified template formatting in subagent-user-prompt.md by collapsing context block to single line.
2026-02-22 18:44:50 +01:00
can1357 dfcc0958c7 fix: update abort handling / compaction tests 2026-02-22 18:44:25 +01:00
can1357 1ec9d4d0f4 chore: reorder internal protocol exports 2026-02-22 18:35:21 +01:00
can1357 4a72bd659e feat(grep): improve grouped output and round-robin limiting 2026-02-22 18:35:19 +01:00
can1357 2574d4c977 feat(todo): add phased todo ops and task statuses 2026-02-22 18:35:06 +01:00
can1357 5f75455b91 feat: add blocking flag to bundled agents 2026-02-22 18:34:54 +01:00
can1357 666a71e7b0 feat: add developer message role support 2026-02-22 18:34:49 +01:00
can1357 cd5c9655aa refactor: renamed notes protocol to local
- Renamed the `notes://` protocol to `local://` for better clarity.
- Updated all internal references, prompts, and tool documentation.
- Migrated plan storage paths to use the new `local://` scheme.
2026-02-22 18:05:22 +01:00
can1357 4e8a3773c9 refactor(coding-agent): restructured XML tags to kebab-case format
- Renamed XML tags from underscore to kebab-case format for consistency across prompts and system messages.
- Updated context tag from `swarm_context` to `context` in render logic and test assertions.
- Consolidated conditional logic in subagent user prompt by removing duplicate assignment blocks.
- Updated system prompt documentation to reflect kebab-case naming convention for XML tags.
2026-02-22 17:57:52 +01:00
can1357 563d6a0ab9 feat(coding-agent): introduced notes:// protocol for session-scoped artifact storage
- Replaced plan:// protocol with notes:// for session-scoped artifact storage and plan finalization.
- Added title parameter to exit_plan_mode tool to enable plan file renaming during approval workflow.
- Implemented NotesProtocolHandler for notes:// URL scheme with path traversal protection and session fallback.
- Added renameApprovedPlanFile function to handle plan artifact finalization with validation and error handling.
- Updated system prompt documentation to reference notes:// protocol and internal URL schemes for artifact access.
2026-02-22 17:41:01 +01:00
can1357 49a3b170c5 refactor(coding-agent): migrated internal protocol from docs:// to pi:// scheme
- Renamed internal documentation protocol from docs:// to pi:// across all modules and prompts.
- Renamed DocsProtocolHandler class to PiProtocolHandler and updated scheme registration.
- Renamed docs-protocol.ts file to pi-protocol.ts to reflect new protocol naming.
- Updated all internal URL references and JSDoc comments to use pi:// protocol consistently.
2026-02-22 17:15:06 +01:00
can1357 8276390877 refactor(coding-agent): standardized XML tags and RFC 2119 keywords across prompts
- Standardized XML tag naming from snake_case to kebab-case across 50+ prompt files for consistency.
- Replaced imperative language with RFC 2119 keywords (MUST/SHOULD/MAY/MUST NOT) throughout system and tool prompts for clarity.
- Removed artifactsDir parameter from Python executor and simplified environment variable handling to use PI_SESSION_FILE only.
- Renamed read_path.md to read-path.md and updated memory guidance with hierarchy rules and conflict resolution workflow.
- Added noEscape option to bash URL expansion and extracted cwd parameter from leading cd commands for improved path handling.
- Exported NO_PAGER_ENV constant from bash-interactive module for centralized environment variable management.
2026-02-22 17:12:27 +01:00
can1357 5f9a2050f7 chore: bump version to 12.19.3 2026-02-22 16:59:35 +01:00
can1357 d912e692d8 feat(coding-agent): added per-command PTY control to bash tool
- Added per-command `pty` parameter to bash tool for fine-grained PTY mode control.
- Removed global `bash.virtualTerminal` setting in favor of per-command PTY parameter.
- Fixed potential deadlock in shell session cleanup by replacing blocking lock with non-blocking try_lock.
- Updated async session key generation to include jobId for improved session isolation.
2026-02-22 16:58:46 +01:00
can1357 0197693cb1 fix(test): removed autocorrect heuristic tests for deleted functionality 2026-02-22 16:24:32 +01:00
can1357 c22f06d665 fix(session): corrected orphaned async tasks on session branch
- Added cancellation of pending async jobs before branching session to prevent orphaned tasks.
2026-02-22 16:12:51 +01:00
can1357 545fda2d6e chore: bump version to 12.19.2 2026-02-22 16:12:25 +01:00
can1357 0af9704d3f fix(session): corrected orphaned async tasks during session reset
- Added cancellation of async jobs during session reset to prevent orphaned tasks.
2026-02-22 16:12:09 +01:00
can1357 8044bafed9 chore: bump version to 12.19.1 2026-02-22 16:10:30 +01:00
can1357 4459c47e81 Version bumps. 2026-02-22 16:08:53 +01:00
can1357 d746edcd4b refactor(patch): removed experimental hashline utilities
- Removed replaceText edit operation and content-replace logic from hashline module.
- Removed autocorrect heuristics including line merge detection and whitespace normalization.
- Simplified edit operations to line-anchor-based methods (delete, rename, prepend, append, insert).
- Removed HL_REPLACE_ENABLED feature flag and related conditional logic.
2026-02-22 16:03:22 +01:00
can1357 d0520ec210 chore: bump version to 12.19.0 2026-02-22 15:35:13 +01:00