Codebase Management
giancarloerra/SocratiCode
Set up, index, and manage SocratiCode codebase indexing. An agent skill from giancarloerra/SocratiCode.
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…
$ npx skills add Kaelio/ktx --skill ktx -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Kaelio/ktx ktx --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/Kaelio/ktx.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ktx .claude/skills/ktx && 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 "ktx" agent skill from https://github.com/Kaelio/ktx/tree/main/skills/ktx into .claude/skills/ktx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ktx", 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/Kaelio/ktx/tree/main/skills/ktxType 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 Kaelio/ktx --skill ktx -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Kaelio/ktx ktx --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Kaelio/ktx.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/ktx .agents/skills/ktx && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "ktx" agent skill from https://github.com/Kaelio/ktx/tree/main/skills/ktx into .agents/skills/ktx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ktx", 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 Kaelio/ktx --skill ktx -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Kaelio/ktx ktx --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Kaelio/ktx.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/ktx .cursor/skills/ktx && 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 "ktx" agent skill from https://github.com/Kaelio/ktx/tree/main/skills/ktx into .cursor/skills/ktx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ktx", 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/Kaelio/ktx.git --path skills/ktx--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 Kaelio/ktx --skill ktx -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Kaelio/ktx ktx --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Kaelio/ktx.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/ktx .gemini/skills/ktx && 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 "ktx" agent skill from https://github.com/Kaelio/ktx/tree/main/skills/ktx into .gemini/skills/ktx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ktx", 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 Kaelio/ktx ktxInstalls 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 Kaelio/ktx --skill ktx -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Kaelio/ktx.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/ktx .github/skills/ktx && 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 "ktx" agent skill from https://github.com/Kaelio/ktx/tree/main/skills/ktx into .github/skills/ktx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ktx", 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 Kaelio/ktx --skill ktx -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Kaelio/ktx ktx --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Kaelio/ktx.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/ktx .opencode/skills/ktx && 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 "ktx" agent skill from https://github.com/Kaelio/ktx/tree/main/skills/ktx into .opencode/skills/ktx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ktx", 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.
ktxInstalls 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…
Ktx is an agent skill from 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 integration, and verifies readiness. Use when the user asks an agent to add ktx to a project, connect data sources, install agent rules, ingest schema, or troubleshoot a local ktx install.
Its SKILL.md is about 3.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `agents/openai.yaml` and `troubleshooting.md`).
It sits in AI & LLM Engineering, covering Embeddings and Agent instruction files. It works with Model Context Protocol. The repository describes itself as: ktx is an executable context layer for data and analytics agents 🐙 Allow Claude Code, Codex, or other AI agents to query analytical databases accurately and with full context of…. The licence is Apache-2.0.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 49a4ae6. 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:
npmnodecodexcursoropencodeFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
docs.kaelio.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
ANTHROPIC_API_KEYOPENAI_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Ktx loads about 3.2k tokens when it runs. Until then it costs about 97 tokens; SKILL.md has 1,413 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 Kaelio/ktx at commit 49a4ae6, republished under its Apache-2.0 licence (© Kaelio). 1,413 words, ~3,193 tokens.
.claude/skills/ktx/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Install and configure ktx, the open-source context layer for data agents. Use this skill when a user wants an agent to add ktx to a project, connect data sources, build initial context, install agent integration, or troubleshoot a local ktx setup.
ktx setup is interactive (clack prompts) and an agent cannot drive it.--help. Use the
flags listed below; verify uncommon flags against the docs at
https://docs.kaelio.com/ktx/ or this skill — not against --help output.file:/abs/path secret refs over env:VAR_NAME. env: refs are
re-resolved against the process environment on every ktx run, so a var
exported only in the setup shell is gone when ktx ingest or ktx mcp start
runs later — the secret silently resolves to empty and the connection fails.
file: refs read from disk and survive across shells. The same caveat
applies to --*-api-key-env flags: the named var must be present in every
shell that runs ktx, including the ktx mcp daemon's environment.ktx setup auto-externalizes it
into .ktx/secrets/<id>-url and rewrites ktx.yaml to a file: ref (see
workflow step 2). Source credential refs are not auto-externalized: write
the secret to a file under .ktx/secrets/ (chmod 600) and pass a file:
ref. Never ask the user to paste a secret when a file: or env: ref works..ktx/secrets/*.Before invoking ktx setup, collect in one round:
--no-input mode the CLI defaults to
anthropic and requires an API key. When the user is inside Claude
Code, pass --llm-backend claude-code explicitly; otherwise pass
--llm-backend anthropic --anthropic-api-key-env ANTHROPIC_API_KEY.sentence-transformers is the local default and needs
no key; use openai only if the user already has a key, then pass
--embedding-api-key-env OPENAI_API_KEY).env: / file: ref), and one or
more schemas.ktx setup --source … run (see
Add context sources); use --skip-sources only
when the user has none.Do not discover these inputs across multiple setup runs.
Detect the install path. If the working directory contains
packages/cli/dist/bin.js or pnpm-workspace.yaml referencing
@kaelio/ktx you are inside the ktx monorepo — build and link the
local CLI with pnpm and do not run npm install -g. Otherwise:
node --version # require >= 22; stop and ask the user if older
ktx --version || npm install -g @kaelio/ktxRun scripted setup (canonical path):
ktx setup --no-input --yes \
--project-dir <path> \
--llm-backend claude-code \
--embedding-backend sentence-transformers \
--database <driver> --database-connection-id <id> \
--database-url '<raw-url | file:/abs/path>' \
--database-schema <schema> \
--skip-sources \
--skip-agents--database-schema is required for scope-bearing drivers (Postgres,
MySQL, ClickHouse, SQL Server, BigQuery, Snowflake) in --no-input:
setup fails fast without it unless the connection already has scope in
ktx.yaml. SQLite needs no scope.--database-url is safe: the CLI relocates the URL
into .ktx/secrets/<connection-id>-url and rewrites ktx.yaml to a
file: ref automatically.ktx setup runs agent integration as its last step. In --no-input
mode with neither --target nor --skip-agents, that step has no input,
prints Run in a TTY, or pass --target <target>., and the command exits
non-zero even though every database/LLM/embedding step succeeded. Pass
--skip-agents to defer agents to step 5 (as above), or --target <agent>
to install them inline and exit 0. Judge data-layer success from
ktx status, not from this exit code.Resumability and --skip-*. Re-running ktx setup against an existing
project resumes its config. Use --skip-llm, --skip-databases,
--skip-sources, or --skip-embeddings to leave a slice unconfigured but
let the rest complete instead of aborting on the first failure. When
resuming an existing project to change one slice (e.g. only LLM), still
pass the database flags from the previous run — setup validates current
flags, not persisted ktx.yaml state.
Build context if setup did not already complete one:
ktx ingest <connection-id> --no-inputktx ingest always builds enriched context and requires a configured model
and embeddings (set during setup); a database connection without them fails
with an enrichment-readiness error. Note: ktx ingest rejects --yes
together with --no-input (Choose only one runtime install mode);
ktx setup accepts both. Use --no-input only for ingest.
Ingest one connection at a time. It can run for many minutes with no
stdout until it exits (LLM-heavy sources like Metabase are the slowest), so
don't assume it hung, and don't pipe it through tail/head — that buffers
all output to the end, so run it raw. Tell the user up front that the step is
slow, then keep them posted instead of blocking silently: run the ingest in
the background and poll for liveness every minute or so, reporting a one-line
update each time (which connection, roughly how long it's been running, and
that .ktx files are still changing) so a long run never looks stuck:
find <path>/.ktx/worktrees <path>/.ktx/ingest-transcripts -type f -mmin -3On success, the Ingest finished summary table shows done in the
Source ingest and Memory update columns with no Failed sources:
section.
Install agent integration:
ktx setup --agents --target <claude-code|claude-desktop|codex|cursor|opencode|universal>
ktx mcp start --project-dir <path>Agent integration is not usable until ktx mcp start is running. The
--agents step prints this requirement as Required before using agents.
Fall back to bare ktx setup only when a human is at the keyboard —
it uses interactive prompts an agent cannot answer.
Context sources (dbt, Metabase, Looker, LookML, MetricFlow, Notion) are added
one at a time — --source is not repeatable, so run ktx setup once per
source. Source setup is resumable against an existing project: pass
--skip-databases --skip-llm --skip-embeddings --skip-agents so only the source
is configured (the trailing agent step otherwise fails the run — see install
step 2). Map Metabase, Looker, and LookML to an existing database connection
with --source-warehouse-connection-id <db-connection-id> (required for those).
dbt ignores --source-warehouse-connection-id — it maps to the warehouse by
table name — so omit it for dbt. Use file:/abs/path refs for keys and tokens
(see the secrets rule above); env: refs must be exported in every later ktx
shell.
# dbt — pick exactly one of --source-path (local) or --source-git-url (remote).
# No --source-warehouse-connection-id: dbt maps to the warehouse by table name.
ktx setup --no-input --yes --skip-databases --skip-llm --skip-embeddings --skip-agents \
--source dbt --source-connection-id <id> \
--source-git-url <url> --source-branch <branch>
# Metabase
ktx setup --no-input --yes --skip-databases --skip-llm --skip-embeddings --skip-agents \
--source metabase --source-connection-id <id> \
--source-url <url> --source-api-key-ref file:/abs/path/metabase-api-key \
--source-warehouse-connection-id <db-connection-id> \
--metabase-database-id <metabase-db-id>
# Notion
ktx setup --no-input --yes --skip-databases --skip-llm --skip-embeddings --skip-agents \
--source notion --source-connection-id <id> \
--source-auth-token-ref file:/abs/path/notion-token \
--notion-crawl-mode selected_roots --notion-root-page-id <page-id>Notes:
--metabase-database-id is the numeric id of the warehouse inside
Metabase (not the ktx connection id). Discover it from the Metabase API
(GET /api/database) or UI if the user doesn't know it.--notion-crawl-mode selected_roots requires at least one
--notion-root-page-id (repeatable); use all_accessible to crawl
everything the token can see.ktx ingest <source-connection-id> --no-input.ktx.yaml: project configuration..ktx/secrets/*: local secret files. Never commit them.semantic-layer/<connection-id>/*.yaml: semantic sources for SQL
compilation.wiki/**/*.md: project context pages for agents..claude/skills/ktx/, .agents/skills/ktx/, .cursor/rules/ktx.mdc, and
.opencode/commands/ktx.md: generated agent integration files.After setup, run:
ktx connection test <connection-id>
ktx status --json --no-input
ktx sl --output plain # lists compiled semantic sources; `ktx sl` has no --no-inputJudge readiness from ktx status --json fields, not the exit code.
ktx status exits 1 whenever the LLM is none (verdict: "blocked"), even
when embeddings and every database connection are healthy. Treat success as:
verdict: "ready" at the top of the JSON, andconnections[].status === "ok" (other levels: warn, fail,
skipped), andktx connection test <id> exited 0, andlocalStats.semanticLayer[].sourceCount > 0 and
localStats.wikiPages[].count > 0 — these confirm the source actually
produced context. Do not rely on localStats.ingest.perConnection to
confirm source ingests: it reflects only completed warehouse ingest reports
and under-reports (often lists just the warehouse connection).If the LLM is intentionally left unconfigured, verdict is blocked and the
exit is non-zero by design — that is still a usable context layer, so report it
as "ready, LLM optional" and judge the data layer by the connection and
localStats fields above rather than retrying setup.
For known failure signatures (invalid ELF header,
Native CLI binary for <plat> not found, Missing Anthropic API key,
claude-code probe failure, ktx cannot work without a database on resume,
Run in a TTY, or pass --target <target>. with a misleading exit 1, and a
secret that resolves empty only during ktx ingest/ktx mcp), see
troubleshooting.md.
End setup work with a concise report:
ktx SETUP COMPLETE
Project: <path>
LLM: <backend> / <model>
Embeddings: <backend> / <model>
Connections: <name> (<driver>) status=<ok|warn|fail>
Sources: <list or none>
Verdict: <ready|needs action>
Next:
1. <copy-pasteable command or action>
2. <copy-pasteable command or action>
RESULT: PASS© Kaelio, Apache-2.0. 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 2 other files in skills/ktx of Kaelio/ktx.
Open the folder on GitHubat commit 49a4ae6
We found 3 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in Kaelio/ktx, which our catalogue first saw on October 7, 2026.
Ktx 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 |
|---|---|---|---|---|---|---|
| Ktx this skillKaelio/ktx | 1.6k | 1 repos | ~3.2k | Automated safety check: Pass | Apache-2.0 | |
| Codebase Managementgiancarloerra/SocratiCode | 3.3k | 1 repos | ~1.8k | Automated safety check: Pass | AGPL-3.0 | |
| Memoryharperreed/dotfiles | 334 | — | ~484 | Automated safety check: Pass | None | |
| Siyuan MCP Visual Assetsyangtaihong59/siyuan-plugins-mcp-sisyphus | 114 | — | ~1.1k | Automated safety check: Pass | MIT | |
| Sandbaseiflytek/skillhub | 5.2k | 2 repos | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| Pgvector Semantic Searchtimescale/pg-aiguide | 1.9k | 1 repos | ~3.8k | Automated safety check: Pass | Apache-2.0 |
giancarloerra/SocratiCode
Set up, index, and manage SocratiCode codebase indexing. An agent skill from giancarloerra/SocratiCode.
harperreed/dotfiles
Semantic memory and context - store and retrieve information with embeddings for similarity search.
yangtaihong59/siyuan-plugins-mcp-sisyphus
MCP playbook for semantic SVG charts and figures, approved asset upload, and verified SiYuan block embedding.
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.
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.
CortexReach/memory-lancedb-pro-skill
Walks through installing and tuning memory-lancedb-pro, picking an embedding, reranker, and LLM combination from four preset configuration plans.
Kaelio/ktx
ktx's semantic layer - a structured catalog of sources (tables/views), measures, joins, and segments expressed as YAML.
Kaelio/ktx
A skill your agent uses when answering a question that needs data from a ktx-connected database - investigating, analyzing, "how many", "show me", "what's the breakdown of", finding records by…
Works with
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…. Ktx is an agent skill from 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 integration, and verifies readiness.
Ktx fits situations like: the user asks an agent to add ktx to a project; connect data sources; install agent rules; troubleshoot a local ktx install.
Run `npx skills add Kaelio/ktx --skill ktx -a claude-code`. Or copy the skill folder (skills/ktx in Kaelio/ktx) into .claude/skills/ktx in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Kaelio/ktx --skill ktx -a codex`. Or copy the skill folder (skills/ktx in Kaelio/ktx) into .agents/skills/ktx 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 Kaelio/ktx --skill ktx -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ktx, .gemini/skills/ktx, .github/skills/ktx and .opencode/skills/ktx in your project.
Going by SKILL.md and its folder, Ktx needs the command-line tools its instructions call (npm, node, codex, cursor and opencode) and credentials named ANTHROPIC_API_KEY and OPENAI_API_KEY. Our summary lists: Node.js; A credential in ANTHROPIC_API_KEY; A credential in OPENAI_API_KEY.
SKILL.md names 1 domain. In commands or code: docs.kaelio.com; the agent is likely to contact it when it follows the instructions. 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.
Ktx is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.2k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Ktx: Codebase Management (giancarloerra/SocratiCode, 3.3k stars), Memory (harperreed/dotfiles, 334 stars), Siyuan MCP Visual Assets (yangtaihong59/siyuan-plugins-mcp-sisyphus, 114 stars) and Sandbase (iflytek/skillhub, 5.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Kaelio (a GitHub organization) maintains it in Kaelio/ktx, which has 1,612 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on September 11, 2026.
Source: Kaelio/ktx on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.