Commit Graph

2079 Commits

Author SHA1 Message Date
can1357 f53864fccc feat(coding-agent): enabled intent tracing by default
- Changed default value of `tools.intentTracing` setting from false to true.
2026-02-20 10:46:17 +01:00
can1357 09f0a46c6d fix(coding-agent): allow non-adjacent insert anchors 2026-02-20 10:38:37 +01:00
Emil Sit 47b2664adc build(coding-agent): generate docs index as build artifact
- Add 'prepack' script so bun publish regenerates the index before packing
- Add root-level 'prepare' script so bun install regenerates after cloning
- Gitignore and untrack docs-index.generated.ts
- Remove 'docs' from package.json 'files'

fixes #116
2026-02-20 10:11:52 +01:00
Emil Sit c6f3eff8c4 fix(coding-agent): inline doc content in generated index instead of static imports
Static imports from '../../../../docs/' resolve correctly in the monorepo
but break when the package is installed from npm -- the docs/ directory
at the repo root is not included in the published tarball.

Switch the generator to read each file at build time and emit the content
as inlined string literals, eliminating all runtime file resolution.
2026-02-20 10:11:52 +01:00
can1357 bb1e581bbc chore: bump version to 12.14.2 2026-02-20 06:09:41 +01:00
can1357 cd5676a36d fix(coding-agent): inline embedded docs to avoid global install path breakage 2026-02-20 06:08:43 +01:00
can1357 880891b013 chore: bump version to 12.14.1 2026-02-19 22:33:02 +01:00
Can Bölük 6922119872 Merge branch 'main' into fix/stats-missing-build-files 2026-02-19 22:30:29 +01:00
Can Bölük afe6be6dc2 Merge pull request #115 from kenvunz/fix/screen-flickering
fix(coding-agent): stopped forced redraws on autocomplete updates
2026-02-19 22:29:06 +01:00
can1357 c6012a5c8f chore: bump version to 12.14.0 2026-02-19 22:26:10 +01:00
can1357 51ec9bd05d feat(coding-agent): enabled docs:// protocol and custom tool discovery from .omp/tools/
- Added docs:// internal URL protocol handler for accessing embedded markdown documentation files with path traversal validation.
- Added support for executable tool files (.ts, .js, .sh, .bash, .py) in custom tools discovery from .omp/tools/ and .claude/tools/ directories.
- Added generate-docs-index build script to automatically scan and embed markdown documentation files at build time.
- Updated system prompt to document docs:// protocol usage and identify agent as operating within Oh My Pi harness.
2026-02-19 22:19:00 +01:00
can1357 7ce3bb6906 feat(coding-agent): introduced hashline format v2 with colon separators and tag-based API
- Changed hashline format separator from pipe (|) to colon (:) for improved readability across all tools and output formats.
- Refactored hashline edit API with operation-based structure: renamed delete->rm, rename->mv, set->target/new_content, and added explicit op field for operation types.
- Updated hashline hash encoding from 4-character base36 to 2-character hexadecimal for more compact representation.
- Replaced anchor terminology with tags throughout hashline documentation and API for clearer semantics.
2026-02-19 22:04:18 +01:00
Ken Vu b0a6d710fb fix(coding-agent): stopped forced redraws on autocomplete updates
onAutocompleteUpdate was calling requestRender(true), which resets all
differential rendering state on every keystroke while the slash menu is
open (debounced at 100ms). This caused the TUI to perform a full screen
clear and repaint on each filter update, producing visible flicker when
the editor is pushed to the bottom of the terminal.

onAutocompleteCancel retains requestRender(true) since it fires only
once on dismissal and the forced redraw is needed to erase the stale
menu rows that the differential renderer would otherwise leave on screen.

onAutocompleteUpdate is changed to requestRender() (no force), letting
the differential renderer repaint only the changed lines within the
autocomplete area.
2026-02-20 09:25:41 +13:00
can1357 7f3079bf2f feat(coding-agent): added streamed tool intent display and hashline edit operations
- Added streamed tool intent display in working message to show real-time intent tracking during agent execution.
- Changed intent tracing field name from `$intent` to `_intent` across tool schemas and agent core for consistency.
- Added support for file deletion and renaming operations in hashline edit mode.
- Renamed hashline edit operation fields: `set` to `target`/`new_content`, `set_range` to `first`/`last`/`new_content`, `insert` to `inserted_lines`.
2026-02-19 18:05:35 +01:00
Colin Mason 676d299c2a docs(coding-agent): add changelog entry for stats package fix 2026-02-19 11:38:41 -05:00
can1357 a80d00abfe feat: added intent tracing to capture tool call metadata
- Added optional `intent` field to `ToolCall` interface for capturing harness-level intent metadata.
- Added `intentTracing` configuration option to enable intent goal extraction from tool calls with automatic `$intent` field injection and argument stripping.
- Implemented intent injection and extraction logic in agent-loop to populate tool call intent metadata when intentTracing is enabled.
- Added `tools.intentTracing` setting to coding-agent configuration schema with environment variable override support.
2026-02-19 17:06:38 +01:00
can1357 aea59fa3e5 style: formatting 2026-02-19 17:06:21 +01:00
can1357 d22fb5e878 feat(patch): added file deletion and rename operations to hashline edit mode
- Added file deletion and rename operations to hashline edit mode with atomic semantics.
- Renamed hashline edit operation keys and fields for clarity: set->target, set_range->first/last, insert->before/after, body->new_content/inserted_lines.
- Added optional content-replace edit variant in hashline mode via PI_HL_REPLACETXT environment variable.
- Enhanced edit validation with per-variant type checking and detailed error messages for malformed operations.
2026-02-19 17:00:45 +01:00
can1357 c9c1077272 feat(tools/grep): added artifact:// URL resolution to grep tool for backing file search
- Added support for resolving internal artifact:// URLs in grep tool to search backing files.
- Fixed grep tool to properly handle internal URL resolution with validation for missing backing files.
- Added comprehensive test suite covering artifact URL resolution, regex patterns, and error handling.
- Optimized CI matrix to conditionally include platform variants based on git tag presence.
2026-02-19 15:47:15 +01:00
can1357 751de7b192 chore: bump version to 12.13.0 2026-02-19 15:03:42 +01:00
can1357 2bdcd618ad feat: introduced hashline API redesign with structured operations and LINE#ID format
- Redesigned hashline edit API with new operation names (set, set_range, insert) and structured body parameter accepting string arrays for multiline edits.
- Changed hashline reference format from LINE:HASH to LINE#ID throughout tools and documentation for improved clarity.
- Enhanced insert operation to support optional before/after anchors enabling flexible insertion positioning and boundary echo stripping.
- Made hashline autocorrect heuristics conditional on PI_HL_AUTOCORRECT environment variable for controlled behavior.
- Added benchmark reports for claude-haiku-4-5 and GPT-5.2-Codex models demonstrating hashline edit variant performance.
2026-02-19 15:02:59 +01:00
can1357 6c884713af feat(ai,coding-agent): add NanoGPT provider and login flow
Fixes #111
2026-02-19 13:51:47 +01:00
can1357 edeb816624 feat(coding-agent): added output flush sync to bash-interactive component
- Added flushOutput() public method to bash-interactive component for synchronizing terminal output completion.
- Enhanced SSH host discovery to load from managed omp config paths (.omp/ssh.json and ~/.omp/agent/ssh.json) with deduplication.
- Improved terminal output handling in interactive bash sessions to ensure queued writes complete before processing pending chunks.
- Refactored write queue consumption in bash-interactive to use index-based tracking instead of array shift operations.
2026-02-19 13:07:24 +01:00
can1357 e41ebe61ec feat(coding-agent): added SSH host management with CLI and slash commands
- Added SSH host management feature with `ssh` CLI command and `/ssh` slash command for add, list, and remove operations.
- Added SSH configuration support at project (.omp/ssh.json) and user (~/.omp/agent/ssh.json) scopes with host discovery from project files.
- Added SSH host configuration flags: --host, --user, --port, --key, --desc, --compat, and --scope for flexible host setup.
- Removed automatic line relocation on stale hash references; now fails with error instead.
2026-02-19 12:52:43 +01:00
can1357 a9fb9c9791 feat(react-edit-benchmark): resolved hashline regression with strict validation
- Added provider failure detection and exponential backoff retry logic to handle authentication and authorization errors in benchmark tasks.
- Implemented HashlineMismatchError behavior in coding-agent to fail on stale hash references instead of silently relocating edits.
- Simplified hashline validation by removing automatic line relocation logic and hash tracking infrastructure.
- Added benchmark report for claude-sonnet-4-6 model showing 85% task success rate with detailed failure analysis and performance metrics.
2026-02-19 12:52:13 +01:00
can1357 ab1c78c750 fix(bash-interactive): corrected terminal output serialization to prevent data loss
- Fixed terminal output handling to properly queue and serialize writes, preventing dropped or corrupted output in interactive bash sessions.
- Implemented write queue with callback-based draining to ensure sequential terminal writes.
- Removed try-catch fallback in output handling, relying on queued serialization for correctness.
2026-02-19 08:29:06 +01:00
can1357 5145eab1ba chore: bump version to 12.12.3 2026-02-19 07:53:54 +01:00
can1357 f8a4c40216 fix(ai): corrected retry logic to detect connection failures consistently
- Added 'unable to connect' to transient error patterns in retry logic to properly handle connection failures.
- Updated retry error detection in coding-agent to match ai package pattern for consistency.
2026-02-19 07:20:19 +01:00
can1357 f935f45554 chore: bump version to 12.12.2 2026-02-19 06:18:44 +01:00
can1357 901ccf19bf chore: bump version to 12.12.1 2026-02-19 05:55:56 +01:00
can1357 c4e83d317a fix(coding-agent): deduplicate provider lists, fix priority order
- Export SEARCH_PROVIDER_ORDER from provider.ts as single source of truth
- Remove duplicate provider arrays from web-search.ts and web-search-cli.ts
- Add missing 'kimi' to CLI command validation (was causing --provider kimi to reject)
- Move perplexity to top of auto-resolve priority
- Fix kimi position in priority order to match documentation
2026-02-19 05:54:42 +01:00
oglassdev 929e3d2c9b fix(coding-agent): format web search options 2026-02-19 05:53:14 +01:00
oglassdev 487eb9166c feat(coding-agent): add kimi web search provider 2026-02-19 05:53:14 +01:00
can1357 081f1063d9 fix(coding-agent): hardened mermaid prerender failure handling
Fixes #109
2026-02-19 05:31:10 +01:00
can1357 548b40c2da fix(coding-agent): stabilized codex model switch tests 2026-02-19 05:16:47 +01:00
can1357 00bb653ecb chore: bump version to 12.12.0 2026-02-19 05:13:50 +01:00
can1357 4dac726c8d feat(coding-agent): added streaming text preview with real-time delta updates
- Added streaming text preview during agent specification generation with real-time text delta updates.
- Added `onRequestRender` callback to agent dashboard for async UI re-renders on state changes.
- Improved system prompt preview rendering with text wrapping and line count indicators.
- Enhanced agent creation flow to display generation status hint and reordered spec review before input form.
2026-02-19 05:13:33 +01:00
can1357 e403ab698c feat(coding-agent): introduced AI-powered agent creation with architect model
- Added AI-powered agent creation flow with architect model for generating custom agent specifications from natural language requests.
- Added keyboard shortcuts (N for new agent, R for regenerate) and scope selection (project/user) for agent creation workflow.
- Added model suggestions UI and success/error notices to agent dashboard for improved creation feedback.
- Added system prompts for agent-creation-architect and agent-creation-user roles with 6-step methodology and JSON schema validation.
- Added file persistence with YAML frontmatter for storing agent specifications at project or user scope.
2026-02-19 05:07:26 +01:00
can1357 69664396a8 fix(tui): fixed history navigation visibility and paging
Fixes #99
2026-02-19 05:06:10 +01:00
can1357 e2bb5041d2 feat(coding-agent): add Agent Control Center dashboard
Closes #93
2026-02-19 04:56:52 +01:00
can1357 f0e0e2b570 chore: bump version to 12.11.3 2026-02-19 04:34:58 +01:00
can1357 50eeaed282 fix: hardened codex session state and cleared tui shrink artifacts 2026-02-19 04:33:45 +01:00
can1357 80ba598cd2 chore: bump version to 12.11.2 2026-02-19 04:13:05 +01:00
can1357 9fd37c0f0f fix(coding-agent): prevented enter from clearing hook editor
Handle plain Enter/Return in HookEditorComponent as newline input so the editor no longer triggers the submit-reset path when no onSubmit handler is wired.

Ctrl+Enter submit behavior remains unchanged.

Fixes #100
2026-02-19 04:12:54 +01:00
can1357 92578430c3 chore: bump version to 12.11.1 2026-02-19 03:46:28 +01:00
can1357 c842829cf8 chore: bump version to 12.11.0 2026-02-19 03:17:56 +01:00
can1357 15497c3049 fix(coding-agent): updated test expectation to match "custom models" error message 2026-02-19 03:16:51 +01:00
can1357 f85e880f52 fix(coding-agent): lazy-load puppeteer to avoid cosmiconfig crash
Puppeteer uses cosmiconfig to search for its configuration at import time. cosmiconfig walks up from CWD parsing every package.json it finds. If any package.json in the search path has invalid JSON, the strict parse-json parser throws synchronously
during module evaluation, surfacing as an uncaught exception that crashes the entire process.
2026-02-18 19:14:50 +01:00
can1357 8c4023b9ed refactor(ai): extracted provider descriptor helpers to reduce boilerplate
- Extracted provider descriptor helper functions (descriptor, catalog, catalogDescriptor, simpleModelsDevDescriptor, openAiCompletionsDescriptor, anthropicMessagesDescriptor) to reduce boilerplate across 47+ provider definitions.
- Refactored model generation script to simplify OAuth credential lifecycle by moving storage cleanup to finally block and parallelizing special discovery sources with Promise.all().
- Consolidated provider validation logic in model registry into reusable validateProviderConfiguration() function with context-aware validation modes.
- Reorganized models.json structure to place contextWindow and maxTokens before compat field for consistency across all provider entries.
2026-02-18 17:48:00 +01:00
can1357 ba6f668644 fix(coding-agent): prevented auto-compaction after handoff 2026-02-18 17:48:00 +01:00