Codebase Management
giancarloerra/SocratiCode
Set up, index, and manage SocratiCode codebase indexing. An agent skill from giancarloerra/SocratiCode.
Guide for building Go applications with the Kit SDK. An agent skill from mark3labs/kit.
$ npx skills add mark3labs/kit --skill kit-sdk -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mark3labs/kit kit-sdk --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/mark3labs/kit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/kit-sdk .claude/skills/kit-sdk && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "kit-sdk" agent skill from https://github.com/mark3labs/kit/tree/master/skills/kit-sdk into .claude/skills/kit-sdk/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "kit-sdk", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/mark3labs/kit/tree/master/skills/kit-sdkType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add mark3labs/kit --skill kit-sdk -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mark3labs/kit kit-sdk --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mark3labs/kit.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/kit-sdk .agents/skills/kit-sdk && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "kit-sdk" agent skill from https://github.com/mark3labs/kit/tree/master/skills/kit-sdk into .agents/skills/kit-sdk/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "kit-sdk", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mark3labs/kit --skill kit-sdk -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mark3labs/kit kit-sdk --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mark3labs/kit.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/kit-sdk .cursor/skills/kit-sdk && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "kit-sdk" agent skill from https://github.com/mark3labs/kit/tree/master/skills/kit-sdk into .cursor/skills/kit-sdk/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "kit-sdk", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/mark3labs/kit.git --path skills/kit-sdk--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add mark3labs/kit --skill kit-sdk -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mark3labs/kit kit-sdk --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mark3labs/kit.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/kit-sdk .gemini/skills/kit-sdk && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "kit-sdk" agent skill from https://github.com/mark3labs/kit/tree/master/skills/kit-sdk into .gemini/skills/kit-sdk/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "kit-sdk", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install mark3labs/kit kit-sdkInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add mark3labs/kit --skill kit-sdk -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mark3labs/kit.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/kit-sdk .github/skills/kit-sdk && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "kit-sdk" agent skill from https://github.com/mark3labs/kit/tree/master/skills/kit-sdk into .github/skills/kit-sdk/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "kit-sdk", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mark3labs/kit --skill kit-sdk -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install mark3labs/kit kit-sdk --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mark3labs/kit.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/kit-sdk .opencode/skills/kit-sdk && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "kit-sdk" agent skill from https://github.com/mark3labs/kit/tree/master/skills/kit-sdk into .opencode/skills/kit-sdk/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "kit-sdk", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
kit-sdkGuide for building Go applications with the Kit SDK. An agent skill from mark3labs/kit.
Kit SDK is an agent skill from mark3labs/kit. Guide for building Go applications with the Kit SDK. Use when the user asks to create a program, service, script, or application that uses Kit programmatically as a Go library — e.g. embedding LLM interactions, building agents, creating CLI tools powered by Kit, or integrating Kit into backend services. Do NOT use for Kit extensions (use kit-extensions skill instead).
Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 13 other files, including reference files (for example `references/common-patterns.md`, `references/configuration.md` and `references/context-compaction-subagents.md`).
It sits in AI & LLM Engineering, covering Embeddings and Building AI agents. It works with Model Context Protocol. The repository describes itself as: KIT (Knowledge Inference Tool) — A lightweight AI agent for coding. The licence is MIT.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 1eb0cb9. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
goFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
ANTHROPIC_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Kit SDK loads about 2.6k tokens when it runs, and up to ~17k if it reads all its reference files. Until then it costs about 95 tokens; SKILL.md has 883 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from mark3labs/kit at commit 1eb0cb9, republished under its MIT licence (© mark3labs). 883 words, ~2,634 tokens.
.claude/skills/kit-sdk/SKILL.md (or your agent's skills folder). This skill also uses 12 other files; get the full folder from GitHub.The Kit SDK (pkg/kit) lets you embed Kit's full agent capabilities — LLM interactions, tool execution, session management, streaming, hooks — into any Go application. Unlike extensions (which are interpreted scripts running inside Kit's TUI), SDK programs are standalone compiled Go binaries.
This file is the entry point. It gives the installation, a quick start, the core lifecycle, and the rules you must never miss. Detailed material lives in the references/ directory (see Reference files below). Read only the reference files that apply to your task.
go get github.com/mark3labs/kitImport path (alias recommended):
import kit "github.com/mark3labs/kit/pkg/kit"package main
import (
"context"
"fmt"
"log"
kit "github.com/mark3labs/kit/pkg/kit"
)
func main() {
ctx := context.Background()
host, err := kit.New(ctx, nil) // nil = load .kit.yml (cwd) then ~/.kit.yml defaults
if err != nil {
log.Fatal(err)
}
defer func() { _ = host.Close() }()
response, err := host.Prompt(ctx, "What is 2+2?")
if err != nil {
log.Fatal(err)
}
fmt.Println(response)
}kit.New(ctx, opts) — loads config, initializes MCP servers, creates LLM provider, sets up agenthost.Prompt(ctx, msg) — send messages, agent uses tools as neededhost.Close() — cleans up MCP connections, model resources, session file handleAlways defer Close():
defer func() { _ = host.Close() }()| Area | Entry points | Reference |
|---|---|---|
| Configure the instance | kit.Options{Model, SystemPrompt, MaxSteps, Tools, ExtraTools, NoSession, ...}, kit.NewIsolatedAgent / kit.Isolated() for hermetic embeds | references/options.md |
| Talk to the agent | Prompt, PromptResult, PromptResultWithFiles, PromptWithOptions, Steer, FollowUp, PromptResultWithMessages | references/prompt-methods.md |
| Observe (read-only) | host.OnToolCall(...), host.OnMessageUpdate(...), host.Subscribe(...) | references/events.md |
| Intercept (read-write) | host.OnBeforeToolCall(priority, fn), OnAfterToolResult, OnBeforeTurn, OnPrepareStep, OnContextPrepare, OnBeforeCompact | references/hooks.md |
| Add capabilities | kit.NewTool(name, desc, fn), kit.TextResult, built-in tool constructors and bundles | references/tools.md |
| Persist conversations | SessionPath, Continue, NoSession, instance and package-level session methods | references/sessions.md |
| Models and MCP | host.SetModel, model registry, custom provider backends (kit.RegisterProvider, Options.Providers), AddMCPServer, in-process servers, MCP OAuth | references/models-and-mcp.md |
| Manage the context window | EstimateContextTokens, Compact, AutoCompact, host.Subagent | references/context-compaction-subagents.md |
A minimal custom tool, which is the most common extension point:
type WeatherInput struct {
City string `json:"city" description:"City name, e.g. 'San Francisco'"`
}
weatherTool := kit.NewTool("get_weather", "Get current weather for a city",
func(ctx context.Context, input WeatherInput) (kit.ToolOutput, error) {
return kit.TextResult("72°F, sunny in " + input.City), nil
},
)
host, _ := kit.New(ctx, &kit.Options{
ExtraTools: []kit.Tool{weatherTool},
})Tools replaces, ExtraTools adds. Options.Tools replaces ALL default tools (core + MCP + extension). Options.ExtraTools adds tools alongside the defaults. Use Tools to restrict the agent's capabilities; use ExtraTools to extend them.Prompt. Subscribers and hooks return an unsubscribe function — defer unsub() if the handler must not outlive a scope.host.On<Event> to observe. Use host.On<Hook>(priority, fn) to block, modify, or inject. In hooks, return nil to allow/pass through; the first non-nil result wins. Lower priority values run first (kit.HookPriorityHigh = 0, Normal = 50, Low = 100).Temperature, TopP, TopK are pointers so an explicit 0.0 differs from "leave the provider default". Zero-value MaxTokens auto-resolves; a non-zero value suppresses right-sizing.NoSession: true for ephemeral, in-memory agents (scripts, subagents, tests).InputTokens alone. With prompt caching, sum InputTokens + CacheReadTokens + CacheCreationTokens + OutputTokens from result.FinalUsage.AutoCompact: true adds proactive compaction before turns that near the limit. If the replay still overflows, the turn fails with kit.ErrContextOverflow.MCPAuthHandler is nil, remote MCP servers that require OAuth fail with an authorization-required error. They do not open a browser silently.kit.LLM* type aliases (LLMMessage, LLMUsage, ...) and kit.ConvertToLLM* helpers. Do not import the underlying LLM library into SDK-facing code.ConfigFile → .kit.yml in cwd → ~/.kit.yml → KIT_* env vars → provider env vars (ANTHROPIC_API_KEY, ...). kit.New handles this; call kit.InitConfig only for special cases.Read the file that matches the task. Paths are relative to this skill's root directory.
| File | Read it when you need... |
|---|---|
references/options.md | Every kit.Options field with comments (model, behavior, generation parameters, provider overrides, session, tools, skills, feature toggles, compaction, MCP OAuth, in-process MCP), the generation/provider cheat-sheet table, and isolated agents (NewIsolatedAgent, Isolated, opt-in options). |
references/prompt-methods.md | All prompt variants: simple string, full result with usage stats, multimodal file attachments, per-call system message injection, system-level steering, continue without new input, multiple user messages in one turn. |
references/events.md | Typed convenience subscribers, the generic subscriber, the full list of event types with their fields, and tool-kind constants. |
references/hooks.md | Each hook (BeforeToolCall, AfterToolResult, BeforeTurn, AfterTurn, PrepareStep, ContextPrepare, BeforeCompact) with result types, plus hook priorities. |
references/tools.md | Creating custom tools with kit.NewTool (schema auto-generation, struct tags, output helpers), built-in tool constructors, tool bundles, tool options, using tools in Options, querying tools at runtime. |
references/sessions.md | Session modes, instance methods, package-level session operations, and implementing a custom SessionManager. |
references/models-and-mcp.md | Model management at creation and runtime, the model registry, model string format, per-model system prompts and generation parameters, custom provider backends (ProviderFactory); dynamic MCP server management, in-process MCP servers, MCP prompts, MCP resources, MCP OAuth authorization and token storage. |
references/context-compaction-subagents.md | Context token estimation, GetContextStats, manual and automatic compaction, reactive compaction; in-process subagents, subscribing to subagent events, named agents. |
references/extension-api-auth-skills.md | The ExtensionAPI (kit.Extensions()), credential management (auth), and skill loading/prompt building. |
references/types.md | The full list of re-exported types (LLMMessage, LLMUsage, tool types, event types, errors, ...). |
references/common-patterns.md | Recipes: scripting/CLI pipe, long-running autonomous agent, streaming output to terminal, multi-turn conversation with memory, tool execution monitoring, guard rails with hooks, parallel subagents, read-only analysis agent. |
references/configuration.md | Config file discovery order, ${ENV_VAR} expansion, kit.InitConfig and kit.InitConfigWithOptions. |
pkg/kit/kit.go — Kit struct, New(), Prompt methods, Subagent, Closepkg/kit/extension_api.go — ExtensionAPI interface, kit.Extensions() accessorpkg/kit/types.go — Re-exported types from internal packagespkg/kit/tools.go — Tool constructors and bundlespkg/kit/events.go — Event types, EventBus, typed subscriberspkg/kit/hooks.go — Hook system (BeforeToolCall, AfterToolResult, etc.)pkg/kit/sessions.go — Session managementpkg/kit/compaction.go — Context compactionpkg/kit/models.go — Model registry lookupspkg/kit/config.go — Config initialization and defaultspkg/kit/skills.go — Skills loading and prompt buildingpkg/kit/auth.go — Credential managementexamples/sdk/ — Working example programs© mark3labs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 12 other files (references) in skills/kit-sdk of mark3labs/kit.
Open the folder on GitHubat commit 1eb0cb9
Kit SDK next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Kit SDK this skillmark3labs/kit | 140 | — | ~2.6k | Automated safety check: Pass | MIT | |
| Codebase Managementgiancarloerra/SocratiCode | 3.3k | 1 repos | ~1.8k | Automated safety check: Pass | AGPL-3.0 | |
| Sandbaseiflytek/skillhub | 5.2k | 2 repos | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| Ms Agent Framework RAGshuyu-labs/WebCode | 278 | — | ~1.1k | Automated safety check: Pass | Custom licence | |
| Pgvector Semantic Searchtimescale/pg-aiguide | 1.9k | 1 repos | ~3.8k | Automated safety check: Pass | Apache-2.0 | |
| KtxKaelio/ktx | 1.6k | — | ~3.2k | Automated safety check: Pass | Apache-2.0 |
giancarloerra/SocratiCode
Set up, index, and manage SocratiCode codebase indexing. An agent skill from giancarloerra/SocratiCode.
iflytek/skillhub
Access 2,000+ AI models and API tools through one MCP interface for inference, media generation, search, scraping, embeddings, social data, and structured retrieval.
shuyu-labs/WebCode
Comprehensive guide for building Agentic RAG systems using Microsoft Agent Framework in C.
timescale/pg-aiguide
A skill your agent uses for setting up vector similarity search with pgvector for AI/ML embeddings, RAG applications, or semantic search.
Kaelio/ktx
Installs and configures ktx, the open-source context layer for data agents — runs ktx setup non-interactively with hidden CLI flags, configures database connections and embeddings, installs agent…
HurricaHjz/second-yourself
OPTIONAL, DORMANT semantic-search layer over the wiki, powered by qmd (local hybrid BM25 + vector + rerank).
mark3labs/kit
Guide for creating Kit extensions. An agent skill from mark3labs/kit.
Works with
Categories
Guide for building Go applications with the Kit SDK. An agent skill from mark3labs/kit. Kit SDK is an agent skill from mark3labs/kit. Guide for building Go applications with the Kit SDK.
Kit SDK fits situations like: the user asks to create a program; application that uses Kit programmatically as a Go library — e.g; kit extensions (use kit-extensions skill instead).
Run `npx skills add mark3labs/kit --skill kit-sdk -a claude-code`. Or copy the skill folder (skills/kit-sdk in mark3labs/kit) into .claude/skills/kit-sdk in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mark3labs/kit --skill kit-sdk -a codex`. Or copy the skill folder (skills/kit-sdk in mark3labs/kit) into .agents/skills/kit-sdk in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mark3labs/kit --skill kit-sdk -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/kit-sdk, .gemini/skills/kit-sdk, .github/skills/kit-sdk and .opencode/skills/kit-sdk in your project.
Going by SKILL.md and its folder, Kit SDK needs the command-line tools its instructions call (go) and credentials named ANTHROPIC_API_KEY. Our summary lists: A credential in ANTHROPIC_API_KEY.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Kit SDK is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.6k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 14k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Kit SDK: Codebase Management (giancarloerra/SocratiCode, 3.3k stars), Sandbase (iflytek/skillhub, 5.2k stars), Ms Agent Framework RAG (shuyu-labs/WebCode, 278 stars) and Pgvector Semantic Search (timescale/pg-aiguide, 1.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
mark3labs (a GitHub organization) maintains it in mark3labs/kit, which has 140 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 6, 2026.
Source: mark3labs/kit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.