--skeleton path on purpose.
It is the clearest way to learn how kg works: which files it creates, what each file is for, and how the pieces fit together. Once that clicks, the regular kg init flow makes a lot more sense too.
Start with the skeleton
Create the starter configuration:kg layout:
manifests/declares which agents exist and how they inherit from each otheragents/contains the actual configuration for each agent
Look at the starter files
kg init --skeleton gives you a small but working example.
~/.kiro/generators/manifests/kg.toml:
gitis a template agent, so it is reusable but does not generate a final JSON filedefaultis a real agent and inherits fromgit
~/.kiro/generators/agents/git.toml:
~/.kiro/generators/agents/default.toml:
kg resolves inheritance, default gets its own settings plus the shell rules from git.
Validate the configuration
Before generating anything, validate it:--global here to keep the example focused on ~/.kiro/generators/, even if you run the command from a project that has local .kiro/generators/ files.
Validation shows the final merged agent configuration that kg will generate.
Generate the agent JSON
When validation looks good, generate the Kiro agent files:git is a template, so it is not generated. default is the real agent, so that is the one you should expect to see.
Make your first change
Now edit the starter files and repeat the loop:- Change
~/.kiro/generators/manifests/kg.tomlif you want to add agents or change inheritance - Change files in
~/.kiro/generators/agents/if you want to change tools, resources, permissions, or MCP configuration - Run
kg validate --global - Run
kg generate --global
Next steps
- If you already have hand-written JSON agents, follow Guided migration
- If you still need to install
kg, head back to Install