Commit Graph

18 Commits

Author SHA1 Message Date
Ed Zynda 3e461a0539 chore: unignore .kit/prompts directory 2026-03-30 18:30:21 +03:00
Ed Zynda 0ef46a75f2 feat: add go-edit-lint extension with TUI diagnostics visibility
- Add go-edit-lint extension that runs gopls and golangci-lint on Go file edits
- Show TUI PrintBlock only when diagnostics are found
- Add explicit prompt to LLM to fix issues when found
- Unignore .kit/extensions/ directory in .gitignore
- Color-coded borders: yellow for single tool issues, red for both
2026-03-22 19:31:50 +03:00
Ed Zynda 1d5473e111 chore: remove unnecessary test/ ignore rule
Remove the test/ directory ignore rule from .gitignore since
there is no root-level test directory in the project.

The internal/extensions/test/ package remains tracked as expected.
2026-03-20 13:17:22 +03:00
Ed Zynda b6adcf159e feat: add extension testing package
Add comprehensive testing utilities for Kit extensions:

- internal/extensions/test/: New test package with:
  - harness.go: Test harness for loading extensions into Yaegi
  - mock.go: Mock context that records all context interactions
  - assert.go: 20+ assertion helpers (AssertBlocked, AssertWidgetSet, etc.)
  - harness_test.go: 18 comprehensive test examples
  - README.md: Complete documentation with usage examples

- internal/extensions/test_api.go: Helper function for creating test API objects

- examples/extensions/tool-logger_test.go: 14 tests demonstrating real extension testing

- examples/extensions/extension_test_template.go: Copy-and-paste template for extension authors

- .gitignore: Allow internal/extensions/test/ directory

All 93 tests pass including race detector.
2026-03-20 13:16:11 +03:00
Ed Zynda 001156053d chore: untrack .agents and skills-lock.json, update skills SKILL.md 2026-03-18 17:05:03 +03:00
Ed Zynda 9e5cf9dd4c gitignore .task/ directory 2026-02-27 11:27:48 +03:00
Ed Zynda 144f0524d5 add output/ to gitignore 2026-02-27 10:47:56 +03:00
Ed Zynda 626f1105c9 move SDK to pkg/kit, extract shared logic from cmd, relocate main to cmd/kit
Restructure the codebase so the CLI app consumes the SDK rather than
the SDK wrapping CLI internals. This eliminates the circular dependency
(sdk -> cmd -> sdk) and establishes pkg/kit as the canonical API.

Key changes:
- Create pkg/kit/ with InitConfig, SetupAgent, BuildProviderConfig
  extracted from cmd/root.go and cmd/setup.go as parameterized functions
- Move sdk/kit.go -> pkg/kit/kit.go (remove cmd import, use local calls)
- Move sdk/types.go -> pkg/kit/types.go
- Move main.go -> cmd/kit/main.go (standard Go project layout)
- cmd/root.go and cmd/setup.go now delegate to pkg/kit, injecting
  CLI-specific state (quietFlag) via the Quiet field on AgentSetupOptions
- Add setSDKDefaults() for cobra-free SDK usage (viper defaults)
- Fix .gitignore: kit -> /kit (was blocking cmd/kit/ and pkg/kit/)
- Update .goreleaser.yaml, Taskfile.yml, AGENTS.md, contribute/build.sh,
  README.md for new cmd/kit entrypoint and pkg/kit import paths
- Add plans/ with 10 detailed SDK revamp plans and Taskfile.yml
- Delete sdk/ directory entirely
2026-02-27 10:42:27 +03:00
Ed Zynda 7a6c0aba61 wire extension slash commands and tools into TUI dispatch pipeline
Extension-registered slash commands are now fully end-to-end:
- Commands appear in autocomplete popup (category: Extensions)
- Commands appear in /help under Extensions section
- Commands dispatch via handleExtensionCommand with argument support
- Command names normalized to /prefix at the cmd layer boundary

Extension-registered tools now show in /tools:
- Agent.GetTools() includes extraTools from extensions
- Previously only core + MCP tools were returned

Also adds RegisterTool and RegisterCommand examples to the
kit extensions init template, and adds .kit/ to .gitignore.
2026-02-27 00:26:06 +03:00
Ed Zynda 7fc94018a9 rename: fork mcphost to kit (github.com/mark3labs/kit)
Rename the entire project from mcphost to kit, including:
- Go module path and all import paths
- SDK type MCPHost -> Kit, file renames mcphost.go -> kit.go
- CLI command name, usage strings, UI labels (KIT in literature)
- Config paths (.mcphost -> .kit), env prefix (MCPHOST_ -> KIT_)
- Data/credential/hooks directory paths
- Remove legacy .mcp config fallbacks
- Session metadata field (mcphost_version -> kit_version)
- MCP client identity name
- Build output, goreleaser binary name
- All documentation, examples, scripts, and test files
2026-02-26 16:59:59 +03:00
Ed Zynda 887622b5c4 Enhancements (#64)
* filter tools

* Enhancements
2025-06-09 18:51:06 +03:00
Ed Zynda 6c8f1114e8 update .gitignore 2025-06-09 12:11:17 +03:00
Earisty 54ff95c421 add contribute guide and fix openai implement to openai-compatible (#13) 2025-04-11 23:16:43 +03:00
Ed Zynda c4ed189f48 Setup goreleaser 2025-01-03 07:08:49 +03:00
GargantuaX 88a8c7bf15 support anthropicBaseURL , openaiAPIKey, anthropicAPIKey cli params (#6)
* * support anthropicBaseURL , openaiAPIKey, anthropicAPIKey cli params

* * support anthropicBaseURL , openaiAPIKey, anthropicAPIKey cli params

* opt

* remove the non-English comments

* add new Flags to document
2024-12-27 14:10:29 +03:00
Ed Zynda b79b521911 Add message window to prevent overloading context 2024-12-10 22:19:35 +03:00
Ed Zynda aca9d750ba update config location and add LICENSE 2024-12-08 19:33:45 +03:00
Ed Zynda d80a14f660 Initial commit 2024-12-08 19:27:53 +03:00