Commit Graph
75 Commits
Author SHA1 Message Date
asepharyana 0155a04cee fix: remove redundant ref in format! argument 2026-07-13 08:16:40 +07:00
semantic-release-bot ab07d094b4 chore(release): 1.0.3 [skip ci]
## [1.0.3](https://github.com/asepharyana/zesdex/compare/v1.0.2...v1.0.3) (2026-07-13)
v1.0.3
2026-07-13 01:14:27 +00:00
asepharyana 29a9fae3f6 ci: add GitHub Actions workflows with semantic-release auto-versioning
chore: fix all 702 clippy warnings across codebase
- auto-fix 475 via cargo clippy --fix
- fix remaining 227 manually: uninlined_format_args, redundant_closure, match_same_arms,
  underscore_binding, format_push_string, items_after_statements, needless_pass_by_value,
  clone_on_copy, case_sensitive_extension, single_match/let-else, write_with_newline,
  and other clippy lints
2026-07-13 08:12:12 +07:00
semantic-release-bot be921d6836 chore(release): 1.0.2 [skip ci]
## [1.0.2](https://github.com/asepharyana/zesdex/compare/v1.0.1...v1.0.2) (2026-07-12)
v1.0.2
2026-07-12 23:51:05 +00:00
asepharyana cb7c388e4f ci: remove clippy from CI - pre-existing warnings need separate cleanup 2026-07-13 06:49:02 +07:00
semantic-release-bot a68d3e95c8 chore(release): 1.0.1 [skip ci]
## [1.0.1](https://github.com/asepharyana/zesdex/compare/v1.0.0...v1.0.1) (2026-07-12)

### Bug Fixes

* resolve clippy uninlined_format_args and match_same_arms warnings ([a491a37](https://github.com/asepharyana/zesdex/commit/a491a371a593bf47d58ac5985bbec325bbae6e38))
v1.0.1
2026-07-12 23:47:05 +00:00
asepharyana a491a371a5 fix: resolve clippy uninlined_format_args and match_same_arms warnings 2026-07-13 06:43:11 +07:00
semantic-release-bot 0eb5510acb chore(release): 1.0.0 [skip ci]
# 1.0.0 (2026-07-12)

### Bug Fixes

* adjust key event handling to ensure history navigation works correctly ([7bdfd9c](https://github.com/asepharyana/zesdex/commit/7bdfd9c4c4b8eb4bad7d200a54616843780e48c0))
* **lsp:** add download-tier helpers, progress callback, and persist previous install check ([aac1de8](https://github.com/asepharyana/zesdex/commit/aac1de8af647298e118e6e3cb87436f6f48946cf))
* remove broken test that calls nonexistent Harness::classify ([522e1e3](https://github.com/asepharyana/zesdex/commit/522e1e31f29bf8d36f3adf9787300b414e9acbd1))
* remove hardcoded API key for security reasons ([c36c819](https://github.com/asepharyana/zesdex/commit/c36c819304c2034d4ec0f31a500c8cbb664665b1))
* reset overlay state to None after workflow actions ([ab8b098](https://github.com/asepharyana/zesdex/commit/ab8b098a57a4e5f7c8af77305bd8ef490de76b5c))
* route warnings to file and add in-app toast notifications ([89b63b1](https://github.com/asepharyana/zesdex/commit/89b63b1bc22746071a52ec81a46245e945991b4e))

### Features

* add 'todofinish' tool to mark tasks as completed in the todo list; update system prompts for task execution ([48d2dc3](https://github.com/asepharyana/zesdex/commit/48d2dc3ad6f31bd43d4782dbe6fa0a459b2cde4f))
* add API connection state management and update status display ([d52ee96](https://github.com/asepharyana/zesdex/commit/d52ee967eebfb24885a0079389e7cbe7cd459a75))
* add editing and MCP command handling, enhance SSE streaming with usage tracking ([18a41aa](https://github.com/asepharyana/zesdex/commit/18a41aad48467d5e6e5b9ac748106200587b8fd5))
* add initial codemap documentation and architecture overview; include backend, data, dependencies, and frontend details ([7158d36](https://github.com/asepharyana/zesdex/commit/7158d362fdd3d66f0cc71be3c5a01a48ca17327e))
* add lesson export and import functionality ([c1ad206](https://github.com/asepharyana/zesdex/commit/c1ad206a0020a52218f4bee9d3b5773da2e5e880))
* add memory management tools and utility commands ([fe82840](https://github.com/asepharyana/zesdex/commit/fe82840c03524f4c02e389ff9105668b83a7a28a))
* add support for Router provider and enhance command handling ([9f272d5](https://github.com/asepharyana/zesdex/commit/9f272d5973333605b54f226c42536b62a3c6428b))
* add todo management feature; implement todo content tracking and display in the UI ([8ad0421](https://github.com/asepharyana/zesdex/commit/8ad042139ee0d1591496fc201ea163d950839fa2))
* add turn_events to ToolCtx and implement live state updates in spawn tool ([a59feb2](https://github.com/asepharyana/zesdex/commit/a59feb23c426bc543cf2dd9316e2dfbcdf779943))
* auto-detect provider from ~/.claude/settings.json ([56847f3](https://github.com/asepharyana/zesdex/commit/56847f380a4eca42c9776048796300b53671edc8))
* enhance AppConfig loading to merge default providers and set API key ([a98fdb0](https://github.com/asepharyana/zesdex/commit/a98fdb0c7bf90c586ac054e4e2780b3c2c6ef36b))
* enhance command classification and error handling; improve process checks and credential security ([ac99835](https://github.com/asepharyana/zesdex/commit/ac99835eb44fa3298867354974bcdc0ccda685c5))
* enhance error handling in OAuth URL building and client creation; improve tool argument sanitization ([bb621fd](https://github.com/asepharyana/zesdex/commit/bb621fdff2ed1f28dbaf33024dff9666c5af8e9f))
* enhance lesson management and review system ([2ded2d8](https://github.com/asepharyana/zesdex/commit/2ded2d8bf13990e38d16478ae48cc95a14a12dae))
* enhance memory management tools; improve lesson tracking and update descriptions for clarity ([ce36e93](https://github.com/asepharyana/zesdex/commit/ce36e936a6a3388a143dd33e680fe071fe33bdd1))
* enhance OAuth flow validation and improve security checks; add credential read blocking and git operation safeguards ([8767bee](https://github.com/asepharyana/zesdex/commit/8767beef399d582a49304a4af7e95abb901d42d6))
* Enhance OAuth module and OpenRouter client functionality ([802d967](https://github.com/asepharyana/zesdex/commit/802d9677ae37ebb13b0ae7831480a8dbbd1aba29))
* enhance prompts and validation for tool-call safety; enforce error handling and technical debt awareness ([80a8223](https://github.com/asepharyana/zesdex/commit/80a8223ee38ddc1be6da21c80c5dbcddfb286fbc))
* enhance prompts with detailed programmer description and add workspace tree generation ([d957e8d](https://github.com/asepharyana/zesdex/commit/d957e8d4ced99fd0b026a5837bbdd5cf71b5fb59))
* enhance safety and crash resilience in file operations; add fsync to critical writes and checks for path traversal ([87d0aac](https://github.com/asepharyana/zesdex/commit/87d0aac596121b564f2cc817f6cbadfe56747002))
* enhance safety filters for shell commands by normalizing ANSI-C quoting ([d09e440](https://github.com/asepharyana/zesdex/commit/d09e440e7e6c48ee0840b6c128216392dc10ab67))
* enhance strictness of Rust compiler settings and improve code quality by treating warnings as errors ([5334c25](https://github.com/asepharyana/zesdex/commit/5334c2501be2b723248dfe5ee7938c6fd3f1ca5f))
* enhance subagent context with abort flag and implement tool call timeout ([2856dd7](https://github.com/asepharyana/zesdex/commit/2856dd78b8a0d076949208851de5c890b86c3415))
* enhance system prompt handling and input key actions ([1f18202](https://github.com/asepharyana/zesdex/commit/1f182021fb342b9c6b8a265114cb25b3ee35efa9))
* enhance workspace management and history tracking in application state ([8a11a46](https://github.com/asepharyana/zesdex/commit/8a11a469f96f961a65d4d4ba7f295869fc5e4670))
* implement background API connectivity checks and update state based on connectivity status ([40108de](https://github.com/asepharyana/zesdex/commit/40108defc08224a4e4024998a5a2503c7a04a0d9))
* implement company pipeline orchestration with user commands for full, quick, and skip modes ([2310c2d](https://github.com/asepharyana/zesdex/commit/2310c2df7fa2134b857109c66bc7ad2e66867cea))
* implement interactive lesson management and update command handling ([dc0f1c7](https://github.com/asepharyana/zesdex/commit/dc0f1c76475fd815b75c9fd22441df812275962e))
* implement model management commands and overlays for enhanced user interaction ([662e269](https://github.com/asepharyana/zesdex/commit/662e269f2cdbb4747a4bde0db6111ac960460185))
* implement subagent tool gating and timeout mechanisms for enhanced security and performance ([3b711bb](https://github.com/asepharyana/zesdex/commit/3b711bbf3b696656373843201e17563e32b13883))
* implement workflow findings sharing for inter-agent communication in workflows ([a080957](https://github.com/asepharyana/zesdex/commit/a080957c26fff158bce9be79eee1189e675f5467))
* increase maximum concurrency for parallel agents to enhance performance ([562509b](https://github.com/asepharyana/zesdex/commit/562509b0e0bbf0a2b22cf5ff11eddba68e006a27))
* introduce workflow management tools and commands ([53b0cb2](https://github.com/asepharyana/zesdex/commit/53b0cb271f17326ab6ca4f9d9686ddac05026916))
* **lsp:** add LSP provision progress messages to toast notifications ([b20bb95](https://github.com/asepharyana/zesdex/commit/b20bb95ada5d5d8d7b8ecadf15a45c83bce11acb))
* **lsp:** implement auto-provisioning for language servers ([e78813e](https://github.com/asepharyana/zesdex/commit/e78813ecdb8811564325651d894c789acc7eac13))
* **lsp:** implement LSP client and server management ([abc7a58](https://github.com/asepharyana/zesdex/commit/abc7a58e31474a632e781e848cd5c04f78b9beff))
* register Claude model roles (opus-4-8, sonnet-5, haiku-4-5) with auto-detected provider ([b7c83dc](https://github.com/asepharyana/zesdex/commit/b7c83dcb6591d639bf50d781126d7d384718faea))
* remove InsertChar action and inline character handling; streamline input processing and autocomplete triggers ([55bcfda](https://github.com/asepharyana/zesdex/commit/55bcfda0d6ac761f8d36be8e41167392801358a3))
* remove ModelUse and ModelAdd commands; update command handling and provider configuration ([c948869](https://github.com/asepharyana/zesdex/commit/c948869d359e2980a1cd749120d5f6d75b5d9c25))
* remove ModePicker overlay and related commands; update mode handling and documentation ([32155f8](https://github.com/asepharyana/zesdex/commit/32155f8ea8745943053f008f28be5383845d34f6))
* remove session hub and related commands from the application ([93d1bbb](https://github.com/asepharyana/zesdex/commit/93d1bbb7c1568f97c176c3a16e91749b2d5b7a81))
* **security-sidecar:** implement a security tooling sidecar with tiered installer and protocol ([f638901](https://github.com/asepharyana/zesdex/commit/f6389018f5e3b7a73641e774f4250c540e94ae3d))
* update API key handling to use default if not provided ([71d3494](https://github.com/asepharyana/zesdex/commit/71d349437200f088c60a344cabf10240b76cc411))
* update maximum steps and token limits to usize::MAX; add split_spans_into_lines function for improved chat display ([0cc60c1](https://github.com/asepharyana/zesdex/commit/0cc60c12ced402e5fe6b7ee4c6e4f319ac8fcc71))
* update README with enhanced descriptions and security features; refactor catastrophic guard checks and tool execution handling ([4bfbe1d](https://github.com/asepharyana/zesdex/commit/4bfbe1d1b9540a0ba19701c012b5f8801823efe2))
v1.0.0
2026-07-12 23:42:23 +00:00
asepharyana 522e1e31f2 fix: remove broken test that calls nonexistent Harness::classify 2026-07-13 06:38:37 +07:00
asepharyana 0512139f03 ci: add GitHub Actions workflows with semantic-release auto-versioning 2026-07-13 06:31:08 +07:00
asepharyana 5334c2501b feat: enhance strictness of Rust compiler settings and improve code quality by treating warnings as errors 2026-07-13 06:22:31 +07:00
asepharyana 3f5f27c339 Enhance TUI with modern design and improved status rendering
- Updated status bar rendering in `status.rs` to feature a segmented design with clear visual segments for app name, status, and metadata.
- Refined color theme in `theme.rs` to adopt a modern dark palette with neon accents, improving visual hierarchy and readability.
- Revamped workflow panel in `workflow.rs` to display agent statuses as compact cards with state badges, enhancing clarity and user experience.
- Improved overall styling consistency across components, ensuring a cohesive look and feel throughout the TUI.
2026-07-13 05:42:17 +07:00
asepharyana 2310c2df7f feat: implement company pipeline orchestration with user commands for full, quick, and skip modes 2026-07-13 05:33:04 +07:00
asepharyana a6eed9e574 Add subagent prompts and implement company workflow orchestration
- Introduced prompts for various subagent roles: architecture reviewer, code quality reviewer, documentation maintainer, implementation team, testing team, and security reviewer.
- Implemented the auto-subagent orchestration in `auto.rs` to manage inline and background reviews.
- Created a division structure in `division.rs` to define roles and responsibilities for each subagent.
- Developed a company workflow orchestrator in `company.rs` to run the complete division pipeline, consolidating findings and generating executive summaries.
- Added logic to determine whether to run a full or quick pipeline based on request complexity.
2026-07-13 05:23:38 +07:00
asepharyana 2856dd78b8 feat: enhance subagent context with abort flag and implement tool call timeout 2026-07-13 04:59:16 +07:00
asepharyana 3b711bbf3b feat: implement subagent tool gating and timeout mechanisms for enhanced security and performance 2026-07-13 04:41:26 +07:00
asepharyana d09e440e7e feat: enhance safety filters for shell commands by normalizing ANSI-C quoting 2026-07-13 04:10:08 +07:00
asepharyana a080957c26 feat: implement workflow findings sharing for inter-agent communication in workflows 2026-07-13 03:12:37 +07:00
asepharyana dc0f1c7647 feat: implement interactive lesson management and update command handling 2026-07-13 02:53:30 +07:00
asepharyana ab8b098a57 fix: reset overlay state to None after workflow actions 2026-07-12 18:19:43 +07:00
asepharyana 562509b0e0 feat: increase maximum concurrency for parallel agents to enhance performance 2026-07-12 18:17:09 +07:00
asepharyana 8a11a469f9 feat: enhance workspace management and history tracking in application state 2026-07-12 18:09:03 +07:00
asepharyana a59feb23c4 feat: add turn_events to ToolCtx and implement live state updates in spawn tool 2026-07-12 17:50:38 +07:00
asepharyana 53b0cb271f feat: introduce workflow management tools and commands
- Added new workflow commands: `/workflow` to open the workflow panel and `/workflow run <prompt>` to execute workflows.
- Implemented `spawn_agents` and `spawn_pipeline` tools for parallel and sequential task execution, respectively.
- Enhanced workflow engine to handle real-time agent status updates and display in the UI.
- Updated workflow panel to show agent statuses, findings count, and session counters.
- Refactored existing code to integrate new workflow functionalities and improve overall structure.
2026-07-12 17:49:34 +07:00
asepharyana 7bdfd9c4c4 fix: adjust key event handling to ensure history navigation works correctly 2026-07-12 17:17:17 +07:00
asepharyana 2d20e8046c docs: update README to reflect new tools and features in the Zesdex system 2026-07-12 17:15:05 +07:00
asepharyanaandClaude Opus 4.8 b7c83dcb65 feat: register Claude model roles (opus-4-8, sonnet-5, haiku-4-5) with auto-detected provider
When ~/.claude/settings.json is found, registers model roles for:
- claude-opus-4-8 (200k context, 8192 max tokens)
- claude-sonnet-5
- claude-haiku-4-5-20251001

Sets claude-opus-4-8 as default model when no custom default exists.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 15:38:37 +07:00
asepharyanaandClaude Opus 4.8 56847f380a feat: auto-detect provider from ~/.claude/settings.json
Reads ANTHROPIC_BASE_URL and ANTHROPIC_API_KEY from Claude Code's
settings.json and registers them as a 'claude' provider. Automatically
sets it as the default provider when no custom default is configured.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 15:36:45 +07:00
asepharyanaandClaude Opus 4.8 aac1de8af6 fix(lsp): add download-tier helpers, progress callback, and persist previous install check
Auto-install improvements:
- Add curl-based download helpers for rust-analyzer and jdtls
- Add progress callback threaded through all provision stages
- Check ~/.local/share/zesdex/lsp/ for previous downloads so install
  only runs once, not on every startup
- Increase run_command timeout to 180s for large downloads
- Add cargo/pacman/brew fallback tiers for Rust
- Add pacman/download tiers for Java jdtls

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 15:32:15 +07:00
asepharyana b20bb95ada feat(lsp): add LSP provision progress messages to toast notifications 2026-07-12 15:19:13 +07:00
asepharyana c36c819304 fix: remove hardcoded API key for security reasons 2026-07-12 15:04:02 +07:00
asepharyana e78813ecdb feat(lsp): implement auto-provisioning for language servers
- Added LSP auto-provisioning functionality to automatically install and connect language servers.
- Introduced `shutdown_lsp` method to cleanly shut down LSP servers on application exit.
- Enhanced `AppStateRest` to spawn a background thread for provisioning language servers.
- Updated `builtin_agents` to include new LSP-related agents.
- Modified settings to include options for LSP auto-provisioning and supported languages.
- Updated file editing and writing tools to notify LSP servers of changes.
- Enhanced LSP tools to support auto-detection of servers based on file extensions.
- Added utility functions for managing known file extensions and resolving server names.
- Created a new `provisioner` module to handle the provisioning logic for various language servers.
2026-07-12 14:47:01 +07:00
asepharyana 48d2dc3ad6 feat: add 'todofinish' tool to mark tasks as completed in the todo list; update system prompts for task execution 2026-07-12 13:52:00 +07:00
asepharyana abc7a58e31 feat(lsp): implement LSP client and server management
- Added LspClient for handling communication with LSP servers, including methods for initialization, notifications, and requests.
- Introduced LspManager to manage multiple LSP server connections, allowing for connection, disconnection, and retrieval of server capabilities.
- Created tools for connecting to LSP servers, retrieving diagnostics, hover information, code completion, definitions, and references.
- Enhanced UI rendering to display token usage and settings in the overlay.
- Updated status bar to show current token usage and selected provider/model.
2026-07-12 13:40:58 +07:00
asepharyana 8ad042139e feat: add todo management feature; implement todo content tracking and display in the UI 2026-07-12 12:43:50 +07:00
asepharyana 80a8223ee3 feat: enhance prompts and validation for tool-call safety; enforce error handling and technical debt awareness 2026-07-12 12:32:32 +07:00
asepharyana ce36e936a6 feat: enhance memory management tools; improve lesson tracking and update descriptions for clarity 2026-07-12 12:21:46 +07:00
asepharyana 40108defc0 feat: implement background API connectivity checks and update state based on connectivity status 2026-07-12 12:09:59 +07:00
asepharyana 55bcfda0d6 feat: remove InsertChar action and inline character handling; streamline input processing and autocomplete triggers 2026-07-12 12:02:45 +07:00
asepharyana ac99835eb4 feat: enhance command classification and error handling; improve process checks and credential security 2026-07-12 11:55:02 +07:00
asepharyana 87d0aac596 feat: enhance safety and crash resilience in file operations; add fsync to critical writes and checks for path traversal 2026-07-12 11:49:33 +07:00
asepharyana 8767beef39 feat: enhance OAuth flow validation and improve security checks; add credential read blocking and git operation safeguards 2026-07-12 11:45:28 +07:00
asepharyana 2efd40ca88 Enhance tool documentation and add new features
- Added module-level documentation for memory tools (`remember`, `recall`, `forget`) to clarify their purpose.
- Improved documentation in `recall.rs` and `remember.rs` to describe the functionality and flow of memory entry operations.
- Updated `mod.rs` to include descriptions for the tool trait and execution context.
- Enhanced `plan.rs` with detailed comments on plan-mode signaling tools.
- Documented text search tools in `search.rs` to explain their functionality.
- Improved sequential-thinking tool documentation in `seqthink.rs`.
- Added safety filter documentation in `shell_filter` for credential and git operations.
- Enhanced utility tools documentation, including `cd`, `dir_cache_update`, and `todowrite`.
- Improved rendering documentation in view modules (`chat`, `markdown`, `status`, `workflow`) to clarify rendering flows and purposes.
2026-07-12 11:28:39 +07:00
asepharyana 7158d362fd feat: add initial codemap documentation and architecture overview; include backend, data, dependencies, and frontend details 2026-07-12 11:10:16 +07:00
asepharyanaandClaude Opus 4.8 89b63b1bc2 fix: route warnings to file and add in-app toast notifications
- Replace all eprintln! with tracing::warn! to avoid TUI corruption
  via stderr writes during alternate screen mode
- Route tracing output to ~/.local/share/zesdex/zesdex.log instead of
  stderr by configuring tracing_subscriber with a Mutex<File> writer
- Add render_toasts() widget: floating notification stack at top-right
  of the terminal, color-coded by severity (Info/Success/Warning/Error/
  Lesson), auto-expires after 5s, max 4 visible
- Apply to 12 files: stream parser, MCP client, subagent engine,
  state/rest, controller/input, app_config, provider, OAuth, agent_def,
  dto/chat/tool

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 10:57:32 +07:00
asepharyanaandClaude Opus 4.8 e29dfadaa7 refactor: surface silent fallbacks with eprintln! logging
Add eprintln! logging before fallback values in 7 files where errors
were previously swallowed without visibility:

- [stream] malformed JSON chunk, missing usage tokens, missing tool call index
- [mcp] missing result fields, client builder failure, response body read error
- [subagent] missing API key in settings, all resolution paths exhausted
- [state] memory_dir no-parent, session_id missing, lock poisoned, store_base_dir
- [input] missing default_model for provider
- [session] corrupt agents.json parse failure
- [pkce] clock-before-epoch on random byte generation

All fallback values are preserved — this adds observability without
changing behavior for callers.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 10:50:34 +07:00
asepharyana bb621fdff2 feat: enhance error handling in OAuth URL building and client creation; improve tool argument sanitization 2026-07-12 10:23:26 +07:00
asepharyana 0cc60c12ce feat: update maximum steps and token limits to usize::MAX; add split_spans_into_lines function for improved chat display 2026-07-12 04:01:10 +07:00
asepharyana a974118b5a Refactor: Remove security module and related functionality
- Deleted the `security` module and its associated files, including `daemon.rs` and `install.rs`.
- Removed references to security features in various modules, including `mod.rs`, `mode/mod.rs`, and `input.rs`.
- Updated the `MiscState` struct to eliminate security-related fields.
- Adjusted the `apply_action` function to remove security action handling.
- Increased the maximum limits for tool-only turns and agent steps in `actions/mod.rs`.
- Modified the review prompt to exclude security checks.
- Cleaned up the `git_operator` and `shell` tools to remove catastrophic guard checks.
- Removed internet-related tools and their references from the tool module.
2026-07-12 03:56:43 +07:00
asepharyana 4bfbe1d1b9 feat: update README with enhanced descriptions and security features; refactor catastrophic guard checks and tool execution handling 2026-07-12 03:37:27 +07:00