The indykite/skills repo packages IndyKite’s core developer workflows as skills - bundles of instructions a coding agent loads on demand. After install, your agent can author CIQ policies, initialise MCP sessions, and deploy IAG against your project from a single prompt.
Verified end-to-end with Claude Code and Gemini CLI. The skills CLI also drops files into the right place for Cursor, Aider, Continue, and any other agent it supports - automatic activation in those agents depends on the agent.
What your agent can do after install
Each row is a real prompt the matching skill is designed to handle. After install, paste the prompt into your agent - the skill activates automatically based on the prompt’s wording.
| You ask your agent… | Skill that handles it |
|---|---|
”Expose Person-OWNS-Car as a parameterised read query.” | indykite-ciq-read |
”Create a new Track node in the IKG with title and loudness.” | indykite-ciq-create-node |
”Add a PLAYED_AT relationship between an existing Track and Venue.” | indykite-ciq-create-relationship |
”Create a new Contract and atomically link it to an existing Vehicle and Person.” | indykite-ciq-create-node-with-link |
”Let a Person update their own music_mood property.” | indykite-ciq-add-property |
”Annotate a PLAYED_AT relationship with a verified flag.” | indykite-ciq-add-relationship-property |
”Clear the music_mood property from a Person - GDPR erase.” | indykite-ciq-delete |
”Initialise an MCP session against eu.mcp.indykite.com and call authzen_evaluate.” | indykite-mcp-server |
| ”Deploy IAG in front of my three A2A agents and wire up the workflow in the IKG.” | indykite-agent-gateway |
Prerequisites
- An IndyKite project. Create one with
POST /configs/v1/projectsor via the IndyKite Terraform provider. - A coding agent - Claude Code, Gemini CLI, or any other agent the
skillsCLI supports. - Node.js on your
PATHsonpxcan run the CLI.
Install
One line, into every agent the CLI detects on your machine:
npx skills add indykite/skills
Restart the agent so it picks up the new skill directory, then verify:
npx skills list
Cherry-pick a single skill
If you only need one capability - say CIQ reads - install just that one:
npx skills add indykite/skills --skill indykite-ciq-read --agent claude-code
Bundle install (Claude Code or Gemini CLI)
For agents with a plugin marketplace, the bundle registers every skill at once and prompts for credentials at install time.
Claude Code:
/plugin marketplace add indykite/skills
/plugin install indykite-skills
Gemini CLI:
gemini extensions install https://github.com/indykite/skills
Try it: your first prompt
After install + restart, paste this into your agent:
Initialise an MCP session against
eu.mcp.indykite.comfor my project and list the available tools.
The indykite-mcp-server skill should activate and walk the agent through mcp/initialize, header construction, and the tools/list call. If it doesn’t activate, see Troubleshooting below.
Credentials
Skills read connection details from environment variables - or, if you used Bundle install, from the prompts you answered at install time. You’ll need a subset depending on which skills you use:
| Variable | What it is | Where to get it |
|---|---|---|
API_URL | IndyKite REST base URL for your region | https://eu.api.indykite.com or https://us.api.indykite.com |
API_KEY | AppAgent token (sent as X-IK-ClientKey) | POST /configs/v1/application-agent-credentials, or indykite_application_agent_credential in the Terraform provider |
BEARER_TOKEN | User OAuth access token | Standard IndyKite OAuth flow. Required for Person-subject CIQ flows and MCP session init |
SERVICE_ACCOUNT_TOKEN | Service-account token with Config API write access | From Hub UI, through the Config REST API or the Terraform provider. |
MCP_URL | IndyKite MCP base URL | https://eu.mcp.indykite.com or https://us.mcp.indykite.com. Used by indykite-mcp-server only |
PROJECT_GID | IndyKite project identifier | Returned in the response of POST /configs/v1/projects, or fetch later via GET /configs/v1/projects |
API_KEY, BEARER_TOKEN, and SERVICE_ACCOUNT_TOKEN are secrets. Don’t commit them, don’t paste them into chat transcripts, and scope them down where possible.
Troubleshooting
A skill doesn’t activate
- It’s installed. Run
npx skills list. If the skill name isn’t there, reinstall with--agent <your-agent>. - The prompt fits the description. Each
SKILL.mdhas adescriptionand## When to use. If your prompt is vague, rephrase it toward the wording there. - No conflicting skill. If two skills could plausibly handle the same prompt, the agent picks one. Disambiguate by invoking the skill explicitly -
/<skill-name>in Claude Code, or your agent’s equivalent.
A CIQ or MCP call returns 401 / 403
API_KEYis the AppAgent token, not a user token.BEARER_TOKEN(when required) is fresh - IndyKite OAuth tokens are short-lived.PROJECT_GIDmatches the project the credentials belong to.
The indykite-mcp-server skill has a dedicated debugging path for MCP 401s; ask the agent about it directly.
Updating to a new release
npx skills add installs symlinks by default, so a git pull in your local copy (or rerunning the install command) picks up new content. Restart the agent after.
Reference
- Repo - github.com/indykite/skills: full
SKILL.mdsources, testing harness, contribution guide. - Skills CLI - skills.sh: supported agents, install flags, telemetry policy.
- MCP server - indykite-mcp-server/SKILL.md: endpoint layout, headers, session lifecycle.
- Agent Gateway - indykite-agent-gateway/SKILL.md: deployment shape, policy model.
- Issues, missing skills, security reports - responsible_disclosure.md for security; everything else via the GitHub issues tracker.