Commit Graph
110 Commits
Author SHA1 Message Date
can1357 857abcc321 chore: bump version to 11.14.0 2026-02-12 04:47:42 +01:00
can1357 e40dbc4892 chore: bump version to 11.13.1 2026-02-12 02:39:58 +01:00
can1357 d0045f77d3 chore: bump version to 11.13.0 2026-02-12 01:12:25 +01:00
can1357 66923df045 chore: bump version to 11.12.0 2026-02-12 00:33:51 +01:00
can1357 61591ea21c chore: bump version to 11.11.0 2026-02-10 22:17:45 +01:00
can1357 1845e96d13 feat(ai): migrated models export from TypeScript to JSON format and updated dependencies
- Migrated models export from TypeScript module to JSON format, changing the public API from importing MODELS from './models.generated' to importing from './models.json' with JSON import assertion.
- Updated @anthropic-ai/sdk dependency from ^0.72.1 to ^0.74.0.
- Simplified model generation script by replacing 49 lines of TypeScript code generation with direct JSON serialization.
- Updated @types/bun devDependency from ^1.3.8 to ^1.3.9 across all packages.
- Removed models.generated.ts exclusion from biome.json linting configuration.
2026-02-10 22:01:35 +01:00
can1357 e1014d57bc chore: bump version to 11.10.4 2026-02-10 19:45:16 +01:00
can1357 f10574567e chore: bump version to 11.10.3 2026-02-10 19:31:10 +01:00
can1357 14355bb39c chore: bump version to 11.10.2 2026-02-10 19:27:34 +01:00
can1357 38e48b9632 feat(coding-agent): added streaming functions and improved hashline format with 2-char hex hashes
- Added streaming functions `streamHashLinesFromUtf8` and `streamHashLinesFromLines` for processing large files with configurable chunking.
- Added `HashlineStreamOptions` interface to control streaming behavior with `startLine`, `maxChunkLines`, and `maxChunkBytes` options.
- Changed hashline format from 4-character to 2-character hex hashes for more compact output.
- Updated `computeLineHash` function to normalize whitespace and removed line number from hash seed for consistency.
- Improved CLI argument parsing with explicit handling of `--help`, `--version`, and subcommand detection.
- Removed `@types/diff` dev dependency as it is no longer needed.
2026-02-10 19:26:49 +01:00
can1357 a728bb08f8 chore: bump version to 11.10.1 2026-02-10 19:19:29 +01:00
can1357 3cdc10a73b feat(cli): replaced oclif with lightweight custom CLI framework in pi-utils
- Created lightweight CLI framework in @oh-my-pi/pi-utils/cli as drop-in replacement for oclif with zero dependencies.
- Migrated coding-agent CLI from oclif framework to @oh-my-pi/pi-utils/cli with lazy command loading and simplified architecture.
- Changed default root command from 'index' to 'launch' for improved UX.
- Removed @oclif/core and @oclif/plugin-autocomplete dependencies from coding-agent package.
- Deleted custom oclif help renderer (oclif-help.ts) as help rendering is now integrated into the new CLI framework.
- Moved launch command from nested index/index.ts to top-level launch.ts for clearer command structure.
2026-02-10 19:18:12 +01:00
can1357 b016092e9b chore: bump version to 11.10.0 2026-02-10 18:46:35 +01:00
can1357 812cb25e8d chore: bump version to 11.9.0 2026-02-10 14:33:07 +01:00
7e4bedf18b Runtime MCP support (#17)
* + /mcp

- Reloads MCP manager in runtime state (no restart needed) and syncs with mcp.json.
- Handles OAuth discovery/auth flow automatically for auth-required servers.
- Validates server names and config shape before saving.
- Persists OAuth credentials in auth storage and links them to MCP config.
- Provides immediate connection checks and clear status messages.
- Supports enable/disable, reauth, and unauth flows that are easy to get wrong by hand.

* active agent tool registry runtime reload + token support for bearer auth http based transport

* +session rebind on succesful connection

* fix(coding-agent): address /mcp check failures

---------

Co-authored-by: can1357 <me@can.ac>
2026-02-10 14:09:41 +01:00
can1357 df56d791b3 chore: bump version to 11.8.3 2026-02-10 07:56:14 +01:00
can1357 acf8ab5225 style: stylistic changes 2026-02-10 07:39:39 +01:00
can1357 7b884cbd20 chore: bump version to 11.8.2 2026-02-10 04:10:01 +01:00
can1357 0c2ba68641 fix(utils): fixed snowflake ID generation to avoid exceeding Number.MAX_SAFE_INTEGER
- Fixed snowflake ID generation to avoid exceeding Number.MAX_SAFE_INTEGER by splitting timestamp into high and low components before bit shifting.
2026-02-10 04:09:44 +01:00
can1357 9629411e9c chore: bump version to 11.8.1 2026-02-10 03:36:48 +01:00
can1357 0f3014a0f0 fix(utils): await child.wait() before disposal in ptree.exec()
using declaration disposes synchronously after return evaluates the
promise expression but before it settles, killing the child process
and producing empty stdout. Adding await ensures the process completes
before Symbol.dispose fires.
2026-02-10 03:30:45 +01:00
can1357 8eae325a9f chore: bump version to 11.8.0 2026-02-10 03:15:33 +01:00
can1357 646aa4a3c8 chore: bump version to 11.7.3 2026-02-10 00:40:51 +01:00
can1357 c6bcc085c8 chore: bump version to 11.7.2 2026-02-07 08:58:47 +01:00
can1357 26c9fce26b chore: bump version to 11.7.1 2026-02-07 08:45:53 +01:00
can1357 d33526b3ba chore: bump version to 11.7.0 2026-02-07 08:32:33 +01:00
can1357 cc46332126 chore: bump version to 11.6.1 2026-02-07 07:28:59 +01:00
can1357 3a3c6fb17d chore: bump version to 11.6.0 2026-02-07 05:00:24 +01:00
can1357 cb89110a37 chore: bump version to 11.5.2 2026-02-07 03:10:52 +01:00
can1357 fc342e3db5 chore: bump version to 11.5.1 2026-02-07 02:45:45 +01:00
can1357 2a7a2796a8 chore: bump version to 11.5.0 2026-02-06 09:44:20 +01:00
can1357 6ce097cf87 chore: bump version to 11.4.1 2026-02-06 07:39:07 +01:00
can1357 31d26d75d6 chore: bump version to 11.4.0 2026-02-06 07:32:50 +01:00
can1357 bf8267e807 chore: bump version to 11.3.0 2026-02-06 05:36:37 +01:00
can1357 aa2c75d727 refactor(utils): simplified abort handling and stream parsing with inlined Promise.withResolvers and Uint8Array lookup
- Removed createAbortablePromise function and inlined Promise.withResolvers usage in untilAborted for simpler abort handling.
- Replaced Bitmap class with simpler Uint8Array lookup table for whitespace detection in SSE parsing.
- Fixed subarray calculation in ConcatSink.pullJSONL to use correct read offset instead of computed remainder.
- Simplified copyWithin call in ConcatSink.pullJSONL to use read offset directly.
- Changed String.replace with regex to replaceAll for carriage return removal in sanitizeText.
- Removed unused test utilities and test cases for TextDecoderStream.
2026-02-06 00:13:29 +01:00
can1357 0171cd7b75 refactor(utils): restructured stream utilities for improved reusability and correctness
- Extracted stream abort handling into dedicated `createAbortableStream` utility function for reuse across stream operations.
- Refactored `sanitizeBinaryOutput` to handle surrogate pairs correctly and filter additional control characters (DEL and C1 control block) with lazy array allocation.
- Simplified JSONL parsing by replacing manual buffer management with new `pullJSONL` generator method in ConcatSink class.
- Removed unused `createSanitizerStream` and `createTextDecoderStream` helper functions that are no longer needed.
- Refactored `readSseJson` to use generator-based line processing with fast-path optimization for OpenAI-style done markers.
- Updated stdio transport to use new `readJsonl` utility instead of manual JSON parsing with TextDecoder.
2026-02-05 23:39:05 +01:00
can1357 c2227e6a81 chore: bump version to 11.2.3 2026-02-05 21:07:09 +01:00
can1357 b12a27830c refactor(stream): improved SSE parsing & added GPT-5.3, Claude 4.6 Opus
- Extracted stream parsing utilities into reusable functions in pi-utils package (readLines, readJsonl, parseJsonlLenient, readSseJson).
- Replaced manual buffer management with ConcatSink class for efficient stream handling across multiple modules.
- Simplified SSE stream parsing in google-gemini-cli provider by using readSseJson utility instead of manual reader setup.
- Refactored MCP stdio transport to use readLines utility for cleaner line-based stream processing.
- Updated RPC client and mode to use readJsonl utility, removing duplicate JSONL parsing logic.
- Optimized buffer allocations by using allocUnsafe where data is immediately populated and reusing empty buffer instances.
2026-02-05 21:06:58 +01:00
can1357 0a8bd08565 chore: bump version to 11.2.2 2026-02-05 17:02:31 +01:00
can1357 5a5dcba9ba chore: bump version to 11.2.1 2026-02-05 14:34:50 +01:00
can1357 e71fabf279 chore: bump version to 11.2.0 2026-02-05 14:31:09 +01:00
can1357 8255875525 refactor(utils): restructured stream handling and improved error semantics across utilities
- Refactored readSseJson abort handling to use pipeThrough with signal instead of manual event listeners, improving stream cancellation semantics.
- Replaced finally block with catch block to handle abort errors explicitly, preventing unnecessary cleanup operations.
- Reformatted test strings to use single quotes for consistency with project style guidelines.
- Removed unused isEnoent import and consolidated error code checking in dump-edit-history script.
2026-02-05 13:41:49 +01:00
can1357 99ea5b517b fix(agent): fixed abort error handling, exit codes, and stdout text conversion in streams
- Fixed handling of aborted requests to properly throw abort errors when stream terminates without a terminal event.
- Fixed exit error handling in ChildProcess.wait() to properly capture exit reasons and non-zero exit codes.
- Fixed stdout text conversion in ChildProcess.wait() to use Response API for proper text decoding.
2026-02-05 11:26:24 +01:00
can1357 16ed34ebed feat(utils): refactored stderr handling API from boolean option to enum-like option
- Changed stderr handling API from `exposeStderr` boolean option to `stderr: "full" | null` enum-like option for clearer intent.
- Refactored ChildProcess constructor to accept stderr parameter directly instead of options object for simpler API.
2026-02-05 11:07:48 +01:00
can1357 1f7c4f6f90 refactor(stream-parsing): restructured stream utilities to use Web standard APIs and generic SSE parsing
- Refactored SSE stream parsing to use generic `readSseJson` utility instead of domain-specific handlers across multiple packages.
- Migrated from Node.js Buffer API to Web standard APIs (Uint8Array, TextDecoder, DataView) for cross-platform compatibility.
- Simplified stream transformation pipeline by consolidating multiple stream operations into unified `createTextLineSplitter` utility.
- Refactored `ptree.ts` to remove complex stream pumping infrastructure and simplify stderr handling with direct async iteration.
- Rewrote stream utilities to operate at binary level with byte-level parsing for improved efficiency and reduced string allocations.
- Updated TypeScript configuration to include DOM.AsyncIterable type definitions for async iterable DOM API support.
2026-02-05 10:59:47 +01:00
can1357 f69671676d build(deps): migrated from @types/node to @types/bun for Bun runtime compatibility
- Migrated from @types/node to @types/bun across all packages to align with Bun runtime.
- Removed @types/node and bun-types from root and package-specific devDependencies.
- Updated tsconfig.base.json to remove 'node' from types array and 'DOM.AsyncIterable' from lib, keeping only Bun-compatible configurations.
- Simplified ReadableStream type annotation in openai-codex-stream.test.ts by removing explicit Uint8Array generic parameter.
2026-02-05 09:10:45 +01:00
can1357 d1ccb24e7e chore: bump version to 11.1.0 2026-02-05 08:27:52 +01:00
can1357 f0b97f44fe chore: bump version to 11.0.3 2026-02-05 04:59:33 +01:00
can1357 89e6479661 refactor: migrated environment variable access from process.env to Bun.env across 71 files
- Migrated all environment variable access from Node.js `process.env` to Bun runtime `Bun.env` API across the entire codebase.
- Updated 71 files including source code, tests, documentation, and configuration to use Bun's native environment variable API.
- Added comprehensive environment variables documentation in `packages/coding-agent/docs/environment-variables.md` covering 100+ environment variables organized by category.
- Updated CHANGELOG entries to reflect migration from `process.env` to `Bun.env` and environment variable prefix changes (PI_* vs OMP_*).
- Maintained identical behavior and logic across all changes - only the environment variable access method was updated.
2026-02-05 04:51:18 +01:00
can1357 be9357694f chore: bump version to 11.0.2 2026-02-05 04:41:47 +01:00