Commit Graph
68 Commits
Author SHA1 Message Date
f25b36a0f2 Add AGENTS.md for Cursor Cloud development environment setup (#144)
* Add AGENTS.md with Cursor Cloud specific development instructions

- Document known issues: broken ESLint config, dev mode type-only import bug, Grok API 410 error
- Include quick reference table for common development commands
- Note environment requirements (Bun, GROK_API_KEY)

Co-authored-by: Ismail Pelaseyed <homanp@users.noreply.github.com>

* Update bun.lock after dependency install

Co-authored-by: Ismail Pelaseyed <homanp@users.noreply.github.com>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Ismail Pelaseyed <homanp@users.noreply.github.com>
2026-03-17 23:53:51 +01:00
e763e2f472 feat: add Cursor project rules for Grok CLI (#143)
Add .cursor/rules/ with MDC rule files covering:
- project-overview.mdc: architecture, tech stack, key patterns
- typescript-conventions.mdc: ESM imports, naming, type practices
- react-ink-components.mdc: Ink terminal UI component guidelines
- tools-and-agent.mdc: agent loop, tool interface, adding new tools
- development-workflow.mdc: scripts, env vars, CI checklist

Update .gitignore to clarify .cursor/ is tracked.

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Ismail Pelaseyed <homanp@users.noreply.github.com>
2026-03-17 22:26:56 +01:00
ad177ec77a Support global custom instructions from ~/.grok/GROK.md (#101)
* feat: add support for global custom instructions

* Remove comments

* Fix import syntax for fs-extra module (#112)

* Fix import syntax for fs-extra module

* Fix import syntax for fs-extra module

* Fix import syntax for fs-extra module

* Fix missing newline at end of morph-editor.ts

* Add where to set the API key in the json file (#107)

* Fix diff generation showing entire file as changed (fixes #83) (#98)

The diff preview was showing the entire file as changed when only a few
lines were actually modified. This was caused by a broken change detection
algorithm that couldn't properly handle insertions and deletions.

Replaced the naive line-matching algorithm with a proper LCS (Longest
Common Subsequence) based diff algorithm using dynamic programming. This
produces minimal, accurate diffs that match what git diff shows.

Changes:
- Added computeLCS(): Computes longest common subsequence between old/new lines
- Added extractChanges(): Extracts actual change regions from LCS table
- Updated generateDiff(): Uses LCS-based change detection instead of broken algorithm

Impact:
- Diff previews now show only actual changes (e.g., 4 lines instead of 260)
- Drastically reduces context pollution in conversation history
- Matches git diff output accuracy

🤖 Contributed by ZDS-AI (https://zds.group)

* add model migration manager and new grok models (#124)

* minor tweaks

---------

Co-authored-by: jszczypk <janusz@fide.pl>
Co-authored-by: Ben Faerber <benfaerber@protonmail.com>
Co-authored-by: Joseph Cheek <jcheek@users.noreply.github.com>
Co-authored-by: Ismail Pelaseyed <homanp@gmail.com>
2025-11-27 16:24:04 +01:00
Ismail Pelaseyed 9d11b16fbf add model migration manager and new grok models (#124) 2025-11-27 16:15:25 +01:00
Joseph Cheek 2050f7ef8e Fix diff generation showing entire file as changed (fixes #83) (#98)
The diff preview was showing the entire file as changed when only a few
lines were actually modified. This was caused by a broken change detection
algorithm that couldn't properly handle insertions and deletions.

Replaced the naive line-matching algorithm with a proper LCS (Longest
Common Subsequence) based diff algorithm using dynamic programming. This
produces minimal, accurate diffs that match what git diff shows.

Changes:
- Added computeLCS(): Computes longest common subsequence between old/new lines
- Added extractChanges(): Extracts actual change regions from LCS table
- Updated generateDiff(): Uses LCS-based change detection instead of broken algorithm

Impact:
- Diff previews now show only actual changes (e.g., 4 lines instead of 260)
- Drastically reduces context pollution in conversation history
- Matches git diff output accuracy

🤖 Contributed by ZDS-AI (https://zds.group)
2025-11-27 15:53:18 +01:00
Ben Faerber debe6f9d2e Add where to set the API key in the json file (#107) 2025-11-27 15:46:50 +01:00
jszczypk d31c459441 Fix import syntax for fs-extra module (#112)
* Fix import syntax for fs-extra module

* Fix import syntax for fs-extra module

* Fix import syntax for fs-extra module

* Fix missing newline at end of morph-editor.ts
2025-11-27 15:42:23 +01:00
Ismail Pelaseyed 12a799f665 fix import and shebang issues 2025-10-01 08:31:34 +02:00
Ismail Pelaseyed 23e2a50289 fix issue with node build (#92) 2025-09-30 08:12:24 +02:00
Ismail Pelaseyed 76e36188d5 fix issue with text-editor tool 2025-09-30 08:08:08 +02:00
Thomas Metcalfe 399d1dccb7 Remove rogue node shebang (#85) 2025-09-26 14:45:28 +02:00
Ismail Pelaseyed 5cb66fafac fix issue with building for bun and npm (#87) 2025-09-26 14:44:08 +02:00
Ismail Pelaseyed 4533b2543a bump sdk 2025-09-13 20:07:13 +02:00
Thomas Metcalfe 9180c4b02e fix: migrate to bun (#78)
* Convert to ES and install with bun

* Delete package-lock.json

* Update README with bun info

* Update .gitignore

* Update .npmignore

* Bump version

* Unignore package lock
2025-09-13 19:56:50 +02:00
Ismail Pelaseyed 7a7f197922 minor tweaks 2025-09-12 16:47:25 +02:00
Ismail Pelaseyed 32812bc59e bump version 2025-09-12 15:58:30 +02:00
Thomas MetcalfeandCursor Agent bd78e9e845 fix: re-enable vibekit by resolving runtime crash when using grok cli (#77)
* chore: update react and remove ink-markdown

* feat: add marked-terminal

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2025-09-12 15:57:43 +02:00
Ismail Pelaseyed bc8a7e21d7 fix issue with multi-word processing 2025-09-12 08:51:51 +02:00
Ismail Pelaseyed a8e96bc78d minor tweaks 2025-09-12 07:42:09 +02:00
Ismail Pelaseyed 4913ab1f48 add support for initial message and grok-code-fast-1 2025-09-12 07:38:12 +02:00
Ismail Pelaseyed f9fa972130 bump deps 2025-08-05 10:28:10 +02:00
Ismail Pelaseyed ff827e2eb4 minor tweaks 2025-08-04 22:11:55 +02:00
Ismail Pelaseyed d07d5f0691 bump sdk 2025-08-04 20:45:50 +02:00
bhaktatejas922 3c8a2863e2 Optional Fast Apply (#61) 2025-08-04 20:45:12 +02:00
Ismail Pelaseyed 3ed04b3228 fix cursor movement in chat input (#64) 2025-08-04 20:22:04 +02:00
Ismail Pelaseyed 243436d0de add a max tool round options (#63) 2025-08-04 17:50:08 +02:00
z23ccandIsmail Pelaseyed 5a4b2c8e25 feat: improve model configuration and settings management (#59)
* feat: improve model configuration and settings management

- Refactor model configuration system with unified settings approach
- Add support for user-level default models and project-level current models
- Implement automatic saving of API key and base URL from command line arguments
- Remove model descriptions for cleaner UI and easier extensibility
- Fix commander.js subcommand argument parsing with fallback mechanism
- Improve configuration file structure and priority handling
- Add comprehensive model configuration utilities in src/utils/model-config.ts

Configuration priority: project current model > user default model > system default
Both main command and git subcommand now save credentials automatically

* refactor: unify settings management

- Add SettingsManager singleton for user/project settings
- Eliminate duplicate settings code across files
- Clear separation: user settings vs project settings

* docs: improve README clarity and organization

- Simplify setup section with quick start approach
- Consolidate configuration info into unified section
- Add clear explanation of user vs project settings
- Document OpenAI-compatible API support
- Remove duplicate model configuration sections

* bump sdk

---------

Co-authored-by: Ismail Pelaseyed <homanp@gmail.com>
2025-07-31 10:07:41 +02:00
Ismail Pelaseyed 346097acab minor tweaks 2025-07-29 18:34:54 +02:00
Ismail Pelaseyed c7eacf7f37 add support for returning openai message objects in headless mode (#54) 2025-07-28 22:42:23 +02:00
Ismail Pelaseyed c4048a5926 update model config (#53) 2025-07-28 22:12:06 +02:00
Ismail Pelaseyed 2ab375111b fix issue with /exit command (#51) 2025-07-28 13:02:09 +02:00
Ismail Pelaseyed c3fc1f7784 fix issue with search params for non grok models (#50) 2025-07-28 12:58:23 +02:00
Ismail Pelaseyed 15220294c0 bump SDK 2025-07-26 00:58:16 +02:00
Ismail Pelaseyed 9c1d82be3c feat: add support for mcp (#44)
* wip

* add support for mcp tools

* minor tweaks to shutting down app
2025-07-26 00:57:27 +02:00
Uzair d99bc0f3ee Added filterCommandSuggestions utility to improve command suggestion logic. (#43) 2025-07-26 00:53:53 +02:00
Ismail Pelaseyed 9642bdaeef feat: git commands (#41)
* feat: add /commit-and-push for AI-generated commits and pushes

* fix: handle missing upstream branch in git push

* feat: add git commit-and-push subcommand with AI assistance

* feat: automate staging changes with git add in commit workflow

* chore: bump version to 0.0.12

* revert package json

* chore(release): bump version to 0.0.12
2025-07-25 00:45:30 +02:00
Ismail Pelaseyed c00feda728 feat: save selected model (#39)
* fix issues with token counting

* save selected model

* minor tweaks
2025-07-24 23:34:22 +02:00
Ismail Pelaseyed e04a6ee126 fix flickering UI in Powershell (#36)
* fix rendering issues in Ink

* fix tool names
2025-07-23 22:57:16 +02:00
Ismail Pelaseyed 5095eb636d bump sdk version (#35)
* bump sdk version

* fix security issues
2025-07-23 22:41:29 +02:00
Ismail Pelaseyed 00f8d113df fix issues with token counting (#33) 2025-07-23 14:54:47 +02:00
Ismail Pelaseyed f020b1d4d8 add support for headless mode (#31) 2025-07-23 06:30:08 +02:00
Ismail Pelaseyed 5c3ba942ea add support for ripgrep search (#30) 2025-07-23 06:19:23 +02:00
z23cc 6f8f9cf839 feat: add model parameter support for CLI (#29) 2025-07-23 05:18:27 +02:00
Ismail Pelaseyed 855f308a7c minor design tweaks 2025-07-22 16:21:36 +02:00
Ismail Pelaseyed 2ba6bfb831 bump cli version 2025-07-22 15:33:32 +02:00
Martin Kalema e662dd32f8 fix: improve diff generation and multi-line string replacement for large files (#23)
- rewrote generateDiff() to show only relevant context (3 lines before/after changes)
- fixed incorrect change counts (was showing 272 additions/removals for 1-line change)
- added fuzzy matching for multi-line string replacements to handle formatting differences
- added replaceAll parameter to replace all occurrences of a string
- added replaceLines() method for line-based editing when string matching isn't suitable
- improved hunk generation to merge nearby changes for better readability

this significantly improves the user experience when editing large files by showing
only the relevant changes instead of the entire file content in confirmation dialogs.
2025-07-22 15:32:28 +02:00
Ismail Pelaseyed 5183e4d3b5 feat: add support for auto-edit toggle (#24)
* add support for auto-edit toggle

* minor tweaks to tool calling
2025-07-22 15:28:23 +02:00
Ismail Pelaseyed 1d45dd3d9e add support for Grok live search (#20) 2025-07-22 11:42:04 +02:00
z23cc 07ec1540c3 feat: add configurable base URL support (#19) 2025-07-22 05:21:00 +02:00
Ismail Pelaseyed 1753bbf332 Update README.md 2025-07-21 15:36:52 +02:00