Commit Graph
1325 Commits
Author SHA1 Message Date
can1357 da60f86f24 feat(coding-agent/core): added isolated task execution with git worktree support
- Added isolated task execution feature with git worktree support.
- Implemented automatic patch generation and application for isolated tasks.
- Added worktree management with baseline capture and delta patching.
- Enhanced task result display to show isolation status and patch information.
2026-01-21 23:57:33 +01:00
can1357 60d51c99cd chore: bump version to 7.0.0 2026-01-21 23:55:47 +01:00
can1357 b9c9330ea1 feat: enhanced usage providers to extract account identifiers from headers
- Enhanced usage providers to extract account identifiers from response headers.
- Fixed GitHub Copilot usage provider token handling and account identifier resolution.
- Added usage report deduplication and provider sorting features.
- Added isolated task execution with git worktree management.
2026-01-21 23:52:03 +01:00
can1357 8e708d7f4c docs(coding-agent): restructured system prompt for better readability and organization
- Updated system prompt structure and formatting for better readability.
- Reorganized tool hierarchy and discipline sections.
- Added parallel work guidance for task-based workflows.
- Enhanced verification and integration methodology sections.
- Updated skills and rules formatting for cleaner presentation.
- Added stronger emphasis on completeness and quality standards.
2026-01-21 22:34:30 +01:00
can1357 5eb3a29665 feat(ai): added comprehensive usage tracking system for multiple AI providers
- Added comprehensive usage tracking system with normalized schema for provider quota/limit endpoints.
- Added usage providers for Claude, GitHub Copilot, Google Antigravity, Google Gemini CLI, OpenAI Codex, and ZAI.
- Added `/usage` command to display provider usage and limits with visual progress bars and account aggregation.
- Refactored usage tracking from Codex-specific to generic provider system with persistent caching.
- Fixed API validation errors when sending empty user messages across multiple providers.
- Clamped OpenAI Codex reasoning effort "minimal" to "low" for gpt-5.2 models.
2026-01-21 22:34:09 +01:00
can1357 7c9b79ca67 fix(coding-agent/core): limited diagnostic messages to 50 items to prevent
- Limited diagnostic messages to 50 items to prevent overwhelming output when processing files with many issues.
- Updated changelog to reflect diagnostic message limiting behavior.
2026-01-21 19:25:24 +01:00
Can Bölük 2098542f6f fix(coding-agent): corrected external editor terminal I/O handling on Unix systems
- Fixed external editor to work properly on Unix systems by correctly handling terminal I/O.
- Fixed external editor to show warning message when it fails to open instead of silently failing.
2026-01-21 19:23:53 +01:00
Can Bölük cad6b0e7dd feat(coding-agent): enhanced /dump to include complete agent context with YAML formatting 2026-01-21 18:11:22 +01:00
can1357 59ab91c939 feat(coding-agent/core): added output() function for reading task outputs with query support
- Added output() function for reading task/agent outputs by ID with multiple formats.
- Added session file support to Python executor for accessing task outputs.
- Added jq-like query support when reading JSON outputs.
- Added offset and limit parameters for reading specific line ranges from outputs.
2026-01-21 17:22:48 +01:00
can1357 228f60612d fix(coding-agent): killed orphaned Python gateway processes on exit 2026-01-21 17:17:22 +01:00
can1357 348f57898a feat(coding-agent): added shortcuts and fixed tool error handling for no matches
- Added "." and "c" shortcuts to continue agent without sending visible message.
- Fixed find tool to handle no matches case without treating as error.
- Fixed read tool to handle no matches case without treating as error.
- Improved fd error handling to distinguish between no results and actual errors.
2026-01-21 16:05:11 +01:00
can1357 0b41368d59 chore: bump version to 6.9.69 2026-01-21 11:58:43 +01:00
can1357 96822471c2 feat(coding-agent): added cell-by-cell Python execution tracking with duration and exit codes
- Added cell-by-cell Python execution tracking with duration and exit codes.
- Added template system with {{placeholders}} for task tool context rendering.
- Enhanced patch applicator to preserve exact indentation when intended.
- Changed Python tool to use cells array instead of single code parameter.
- Updated task tool schema to require vars instead of task field.
2026-01-21 11:58:29 +01:00
can1357 4555c8ba9d feat(coding-agent): added Python execution support with extension system and theming
- Added extension system support for Python execution events with new event types and handlers.
- Added Python mode theming and execution indicators across all theme files.
- Added `$` and `$$` command prefixes for Python execution in interactive mode.
- Changed Python tool to use cells array instead of single code parameter.
- Renamed workdir parameter to cwd in Bash and Python tools for consistency.
2026-01-21 11:01:03 +01:00
can1357 4c04c688d7 feat(omp-stats): added CLI stats command for omp-stats functionality
- Added stats command to CLI for accessing omp-stats functionality.
- Updated omp-stats package metadata with keywords and README.
2026-01-21 10:58:33 +01:00
can1357 8981ccb303 fix(coding-agent): harden patch indentation 2026-01-21 10:30:23 +01:00
can1357 a2501514d2 feat(omp-stats): added omp-stats package for AI usage tracking with SQLite aggregation
- Added new omp-stats package for AI usage statistics tracking with SQLite-based aggregation.
- Implemented web dashboard with real-time visualization and auto-refresh functionality.
- Added `omp stats` CLI command with configurable port, JSON output, and summary options.
- Created programmatic API for session sync and stats retrieval with TypeScript exports.
2026-01-21 10:25:22 +01:00
can1357 a5293b2fa6 feat(coding-agent): added multi-cell Python execution with persistent kernel
- Added multi-cell Python execution with sequential processing in persistent kernel.
- Changed Python tool API to use cells array instead of single code parameter.
- Renamed workdir parameter to cwd across Bash and Python tools for consistency.
- Fixed indentation adjustment logic for mixed indentation levels in patch tool.
2026-01-21 10:20:11 +01:00
can1357 7f6d4ccf80 chore: bump version to 6.9.0 2026-01-21 08:15:15 +01:00
can1357 fa881fd508 refactor: removed voice control and git features from coding-agent
- Removed voice control and TTS features from coding-agent package.
- Removed git tool integration and worktree management from coding-agent.
- Deleted entire git-tool package and all git operations.
- Inlined OpenAI Codex prompt utilities and removed provider exports.
2026-01-21 08:09:15 +01:00
can1357 5659ad1316 chore: bump version to 6.8.5 2026-01-21 07:59:30 +01:00
can1357 62c029b8eb feat(coding-agent/core): changed timeout units to milliseconds in Python tool
- Changed timeout parameter from seconds to milliseconds in Python tool.
- Updated PythonExecutorOptions interface to use timeoutMs instead of timeout.
- Improved streaming output handling by removing async queuing and simplifying buffer management.
- Updated default timeout to 30000ms for Python tool execution.
2026-01-21 07:59:23 +01:00
can1357 9b71036848 chore: bump version to 6.8.4 2026-01-21 07:42:31 +01:00
can1357 1db58085e3 fix(coding-agent/core): corrected async stream handling and timeout conversion
- Fixed async stream handling in executors by adding await to stream.dump() calls.
- Improved output sink to handle large outputs and prevent truncation.
- Fixed timeout handling in web fetch tool with proper millisecond conversion.
- Updated process execution in web scrapers to use ptree.cspawn instead of Bun executor.
2026-01-21 07:18:13 +01:00
can1357 0c875907b7 chore: bump version to 6.8.3 2026-01-21 04:49:03 +01:00
can1357 8f044db8c6 feat(tui): added undo/redo functionality to editor with Ctrl+- and Ctrl+_
- Added undo/redo functionality to editor with Ctrl+- and Ctrl+_ keybindings.
- Added Alt+Delete and Alt+D keybindings for delete word forward functionality.
- Added configurable code block indentation to Markdown component.
- Improved fuzzy matching to handle alphanumeric character swaps.
- Normalized keybinding system to handle case-insensitive key IDs.
- Changed label edit shortcut from 'l' to 'Shift+L' in tree selector.
2026-01-21 04:48:08 +01:00
can1357 69c695cd53 refactor(coding-agent/core): simplified task artifact handling and file operations
- Removed bundled WorktreeCommand from custom commands loader.
- Simplified artifact handling from structured paths to direct file paths.
- Changed output file extension filter from .out.md to .md.
- Replaced fs operations with Bun.file() API for async file handling.
2026-01-21 04:40:48 +01:00
can1357 a8beb8ffbf chore: bump version to 6.8.2 2026-01-21 02:02:11 +01:00
can1357 ff3203ce90 feat(pi-utils): added occurrence previews for ambiguous patch matches
- Enhanced patch application to handle duplicate content with occurrence previews.
- Added AsyncQueue class for improved async stream management in ptree.
- Improved error messages with line previews for ambiguous text matches.
- Added occurrence tracking properties to MatchOutcome interface.
2026-01-21 02:00:17 +01:00
can1357 87c1de9fab fix(ai): corrected OAuth callback flows and hardened credential storage permissions
- Fixed OAuth callback flows for GitHub Copilot and Google Gemini to handle cancellation and manual input errors.
- Hardened database file permissions to 0o600 and directory creation to 0o700 to prevent credential leakage.
- Fixed cache invalidation for streaming edits and file existence checks for prompt templates.
- Fixed bash output streaming to prevent premature closure and LSP client request handling for aborted signals.
2026-01-21 01:44:31 +01:00
can1357 698751e7fe chore: bump version to 6.8.1 2026-01-20 19:51:22 +01:00
can1357 21af96d890 fix: added Cursor OAuth provider and fixed authentication flow race conditions
- Added Cursor OAuth provider support to CLI authentication flow.
- Fixed race conditions in OAuth callback handling and session picker cleanup.
- Improved JWT token parsing and error handling across OAuth providers.
- Replaced Bun.sleep() with abortable sleep for proper cancellation support.
- Enhanced process execution with concurrent stream reading and better timeout handling.
- Added cache cleanup mechanism for auth storage with 5-minute intervals.
2026-01-20 19:50:50 +01:00
can1357 94f406d4f0 chore: bump version to 6.8.0 2026-01-20 16:30:47 +01:00
can1357 b2c94bef1a refactor(deps): restructured codebase to use centralized pi-utils package
- Created new @oh-my-pi/pi-utils workspace package with shared utilities for logging, process management, stream handling, and temporary directory management.
- Migrated all packages to use centralized logger from @oh-my-pi/pi-utils instead of local winston implementations.
- Replaced custom process spawning and stream reading implementations with standardized cspawn and readLines utilities across all modules.
- Converted synchronous file operations and process spawning to async patterns using Bun shell syntax and fs/promises.
- Added streaming edit abort functionality with configurable setting to abort on patch preview failures.
- Updated test framework from vitest to bun:test across all test suites.
2026-01-20 05:33:21 +01:00
can1357 030b812624 feat(ai): implemented OAuth authentication with SQLite storage and callback server
- Added OAuth callback server with automatic port fallback and CSRF protection.
- Added persistent SQLite-based credential storage replacing auth.json file system.
- Added logout and status CLI commands for OAuth provider management.
- Refactored all OAuth flows to use common OAuthCallbackFlow base class.
- Added automatic regex pattern validation with fallback to literal mode in grep tool.
2026-01-19 20:25:43 +01:00
can1357 5b15b17587 chore: bump version to 6.7.670 2026-01-19 18:55:12 +01:00
can1357 174288b8f6 feat(ai/providers): enhanced OAuth flow with state validation and cache control
- Enhanced OAuth authentication flow with proper state generation and validation.
- Added configurable cache control support for tool blocks and user text messages.
- Improved security with increased PKCE verifier size and better token handling.
- Simplified OAuth tool name handling and unified client creation flows.
2026-01-19 18:54:56 +01:00
can1357 43885b6b9a chore: bump version to 6.7.67 2026-01-19 17:32:39 +01:00
can1357 dac7202d30 feat(coding-agent): added normative rewrite settings and streaming preview to tools
- Added normative rewrite and read line numbers settings for tool configuration.
- Enhanced edit and write tools with streaming preview and spinner animation.
- Improved normative patch tool to auto-derive anchors from diff hunks.
- Updated read tool to respect default line numbers setting.
2026-01-19 17:32:24 +01:00
can1357 e01d08be07 chore: bump version to 6.7.0 2026-01-19 16:33:17 +01:00
can1357 440ac33dbf style: reformatted TypeScript code formatting and added benchmark reports
- Reformatted code indentation and spacing across multiple TypeScript files.
- Standardized export statements to single-line format in various modules.
- Fixed async/await precedence and corrected indentation in benchmark files.
- Added benchmark report files for GPT-5.1-codex-mini model performance.
2026-01-19 16:22:47 +01:00
can1357 f06d289338 feat(coding-agent): added normative patch generation for edit tool canonicalization
- Added normative patch generation for canonicalizing edit tool output.
- Implemented tool call argument rewriting for session history persistence.
- Enhanced patch applicator to support normalized patch input processing.
- Updated agent and AI types to include normative input parameters.
- Removed tar-stream dependency and replaced with Bun.Archive for benchmark package.
2026-01-19 16:16:55 +01:00
can1357 5ae70ed2dd feat: enhanced patch applicator with fallback variants and fuzzy matching
- Enhanced patch applicator with fallback variant generation and improved fuzzy matching.
- Added support for ellipsis placeholders, top-of-file anchors, and comment-prefix normalization.
- Renamed operation and moveTo parameters to op and rename across patch tool interfaces.
- Added batch processing system to benchmark runner for parallel task execution.
- Added comprehensive benchmark reports for Claude Haiku and GPT-5.1-codex-mini models.
2026-01-19 16:16:55 +01:00
can1357 7a081e1c7c feat: added React mutation testing package and coding-agent improvements
- Added new @oh-my-pi/react-edit-benchmark package for React source code mutation testing.
- Added --no-title flag to disable automatic session title generation in coding-agent.
- Changed default behavior of read tool to omit line numbers by default.
- Added environment variable support for edit tool configuration and fuzzy matching.
- Updated test files to use import.meta.dir for ES module compatibility.
- Added Prettier configuration and CI improvements for private package handling.
2026-01-19 16:16:55 +01:00
can1357 5f8b80c5a8 fix(coding-agent): flushed lsp batch on delete 2026-01-19 16:16:55 +01:00
can1357 50e3d73b65 feat(coding-agent): added allowFuzzy option to control patch matching behavior
- Added allowFuzzy option to control fuzzy matching behavior in patch operations.
- Added validation for line numbers to ensure they are >= 1 in patch headers and hints.
- Enhanced fuzzy matching algorithms to respect the allowFuzzy setting for precise control.
- Fixed patch application to prefer actual diff over cached preview when displaying results.
2026-01-19 16:16:55 +01:00
can1357 e22d74b8bb fix(coding-agent/patch): accept unique substring matches regardless of line length ratio
Previously, substring context matching required the pattern to be at least
30% of the line length to prevent ambiguous matches. This caused failures
when matching short identifiers like 'class EditTool' against long export
lines with generics and implements clauses.

Now, if exactly one substring match exists in the file, it is accepted
regardless of the ratio threshold - uniqueness alone is sufficient for
disambiguation. The ratio filter is only applied when multiple substring
matches exist.

Added regression tests for model edit attempts from session analysis.
2026-01-19 16:16:54 +01:00
can1357 df2745e6f5 feat(coding-agent): added OMP_NO_PATCH env var and simplified diff formatting
- Added OMP_NO_PATCH environment variable to control patch mode behavior.
- Simplified function call formatting in diff rendering.
2026-01-19 16:16:54 +01:00
can1357 2b103bf9ad feat(coding-agent/core): added nested @@ context anchors and hierarchical matching
- Added support for nested @@ context anchors and hierarchical context matching.
- Enhanced patch parser to handle @@ line N syntax and multiple context accumulation.
- Improved diff rendering and error messages with hierarchical context display.
- Added comprehensive regression tests for model-generated patch formats.
2026-01-19 16:16:54 +01:00
can1357 fc1ae8dc72 refactor(coding-agent): migrated to class-based architecture for tool implementations
- Refactored output sanitization logic into centralized streaming-output module.
- Converted tool implementations from factory functions to class-based architecture.
- Updated SSH executor to use shared output streaming infrastructure.
- Moved voice recording logic from function to class-based implementation.
2026-01-19 16:16:54 +01:00