How the Understand-Anything Plugin Integrates with Kiro CLI and Vibe CLI
The Understand-Anything plugin integrates with Kiro CLI and Vibe CLI through an automated install.sh script that generates a Kiro agent configuration file and creates a symbolic link in Vibe's plugin directory, enabling both tools to access the same skill definitions without manual setup.
The Egonex-AI/Understand-Anything repository provides a unified plugin architecture that works seamlessly across multiple CLI environments. By running simple installation commands, developers can activate the codebase analysis capabilities in either Kiro or Vibe, with both integrations sharing the underlying skill files located in understand-anything-plugin/skills/understand/.
Kiro CLI Integration
The Kiro CLI integration is handled by the install.sh script when invoked with the kiro argument. This process creates a complete agent definition that Kiro can discover and load at runtime.
Agent Configuration and Resource Registration
When you execute ./install.sh kiro, the script performs four critical operations defined in the bash source:
- Creates the Kiro agents directory at
~/.kiro/agents/if it does not exist - Dynamically scans the
understand-anything-plugin/agents/directory for all*.mdfiles - Generates a JSON resource list using
file://URLs pointing to each agent markdown file - Writes the
understand.jsonconfiguration that defines the agent's capabilities
The generated ~/.kiro/agents/understand.json file contains:
{
"name": "understand",
"description": "Analyze codebase into interactive knowledge graph — Understand Anything",
"prompt": "file:///path/to/understand-anything-plugin/skills/understand/SKILL.md",
"tools": ["read", "write", "shell", "grep", "glob", "code", "subagent"],
"resources": [
"file:///path/to/understand-anything-plugin/agents/project-scanner.md",
"file:///path/to/understand-anything-plugin/agents/graph-reviewer.md"
]
}
The resources array is built dynamically using a while loop that finds all markdown files in the agents directory, ensuring new agents are automatically registered without manual updates. The prompt field points to SKILL.md, which serves as the primary instruction set for the Kiro agent.
After installation, start the agent with:
kiro-cli chat --agent understand "Analyze this project"
Vibe CLI Integration
The Vibe CLI integration follows a simpler symlink-based approach that leverages Vibe's universal plugin discovery mechanism.
Universal Plugin Discovery
When running ./install.sh vibe, the script calls the link_plugin_root function to create a symbolic link from Vibe's plugin directory to the repository's plugin root:
# The install.sh creates this symlink structure:
~/.vibe/plugins/understand-anything -> /path/to/repo/understand-anything-plugin
Vibe scans the ~/.vibe/plugins/ directory at startup and automatically loads any valid plugin directories it finds. By linking the entire understand-anything-plugin folder, Vibe gains immediate access to the skill definitions without requiring individual file registration or JSON configuration.
Execute the plugin through Vibe with:
vibe-cli run understand --path /path/to/your/project
Installation and Usage Examples
Installing for Kiro CLI
Run the installer from the repository root to set up the Kiro agent:
./install.sh kiro
This command outputs confirmation showing the created configuration file:
→ Creating Kiro agent configuration
✓ /home/user/.kiro/agents/understand.json
Installing for Vibe CLI
Run the Vibe-specific installation:
./install.sh vibe
The script links the plugin root and confirms:
→ Linking universal plugin root
Running Code Analysis
Once installed, both CLIs can analyze codebases using the same underlying skill:
Kiro approach:
kiro-cli chat --agent understand "Show me a diagram of the code architecture"
Vibe approach:
vibe-cli run understand --path ./my-project
Both commands invoke the read, write, shell, grep, glob, code, and subagent tools defined in the configuration, accessing the agent markdown resources from understand-anything-plugin/agents/.
Key Integration Files
The following files enable the dual-CLI integration:
install.sh– The main installer located at the repository root that handles both Kiro JSON generation and Vibe symlink creationunderstand-anything-plugin/skills/understand/SKILL.md– The primary skill definition referenced by both CLI configurations as the agent promptunderstand-anything-plugin/agents/*.md– Individual agent documentation files that are dynamically registered as resources in Kiro and accessible as static files in Vibe~/.kiro/agents/understand.json– The generated Kiro agent configuration (created during installation)~/.vibe/plugins/understand-anything– The symbolic link pointing to the plugin directory (created during installation)
Summary
- The
install.shscript automates integration for both CLI tools through specific subcommands (./install.sh kiroand./install.sh vibe) - Kiro integration uses a JSON agent definition that dynamically registers all
*.mdfiles from theagents/directory as resources, withSKILL.mdserving as the prompt - Vibe integration relies on a symbolic link to the plugin root, enabling universal plugin discovery without additional configuration files
- Both CLIs share the same skill source in
understand-anything-plugin/skills/understand/, ensuring consistent behavior across environments - Runtime invocation differs by CLI: Kiro uses
kiro-cli chat --agent understandwhile Vibe usesvibe-cli run understand --path
Frequently Asked Questions
How do I install the Understand-Anything plugin for both Kiro and Vibe simultaneously?
Run each installation command separately from the repository root. Execute ./install.sh kiro to generate the Kiro agent configuration, then run ./install.sh vibe to create the Vibe symlink. Both commands can be run safely on the same system without conflicts, as they write to different configuration directories (~/.kiro/ and ~/.vibe/).
What is the difference between how Kiro and Vibe load the plugin resources?
Kiro loads resources explicitly through the resources array in understand.json, which contains file:// URLs pointing to each markdown file in the agents/ directory. Vibe accesses the same files through the filesystem via the symbolic link, reading the plugin structure directly from the linked directory without requiring an explicit manifest of individual files.
Where does the install.sh script place the Kiro agent configuration?
The script creates the file at $HOME/.kiro/agents/understand.json. It first ensures the ~/.kiro/agents/ directory exists, then generates the JSON configuration with the correct absolute paths to the skill files and agent resources based on your repository location.
Can I use the Understand-Anything plugin with Vibe without running the install script?
Yes, though manual setup is required. You would need to create a symbolic link manually from ~/.vibe/plugins/understand-anything to the understand-anything-plugin directory in your repository clone. The install.sh script automates this link creation to prevent path errors and ensure Vibe can discover the plugin at startup.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →