Using Obsidian as an AI Operating System with Kiro and Claude

This note summarizes the architectural concept and implementation steps for building a personalized, agentic workflow using Obsidian as a knowledge base, Claude as the AI engine, and Kiro as the orchestrator.

Core Concept: The “Agentic Obsidian OS”

The goal is to create a system where Obsidian acts as the “hard drive” for storing reusable AI “skills” (prompts), which can be activated on demand by an agent.

System Architecture Components:

  1. Obsidian (The “Hard Drive”):
    • Acts as the central, local-first repository for your knowledge and AI instructions.
    • Each “Claude Skill” is stored as a separate, easily editable Markdown note. This treats your prompts as versionable, linkable “software.”
  2. Claude (The “CPU”):
    • The underlying Large Language Model that provides the reasoning and generation capabilities. It executes the instructions defined in the skill notes.
  3. Kiro (The “Operating System / Shell”):
    • The orchestrator that connects the user’s request to the correct skill and the AI engine.
    • Kiro agents can be given access to local file directories, making them aware of the “skills” stored in your Obsidian vault.

Implementation Workflow

Here is the step-by-step process to build and use this system:

Step 1: Organize “Claude Skills” in Obsidian

Create a dedicated folder within your Obsidian vault to hold the skill files.

  • Example Folder: /path/to/your/vault/Claude-Skills/
  • Example Skill Notes:
    • copywriter.md
    • python-debugger.md
    • social-media-strategist.md

Each note should contain the full system prompt, persona, instructions, and any few-shot examples needed for that specific skill.

Step 2: Configure a Kiro Agent to Use Your Skills

In your terminal, use the Kiro CLI to make a Kiro agent aware of your skill library.

  1. Enable the Knowledge Feature:
    (This is an experimental feature and may need to be enabled first.)

    kiro-cli settings chat.enableKnowledge true  
  2. Add the Skills Folder to the Agent’s Knowledge:
    (This command indexes the content of your skills folder for this specific agent.)

    kiro /knowledge add --name claude-skills --path /path/to/your/vault/Claude-Skills/  

Step 3: Execute Tasks

Interact with your Kiro agent from the command line. The agent will automatically perform a semantic search on its knowledge, find the most relevant skill file, and use it as context for your request.

  • Example Command:
    kiro "Generate three Twitter post ideas for a new productivity app called 'FlowState'."  

In this example, Kiro would identify the copywriter.md or social-media-strategist.md files as relevant, use their contents to create a detailed prompt for Claude, and return a high-quality, context-aware response.

Key Insight: Kiro’s Unified IDE and CLI

A crucial aspect of this setup is that Kiro is a unified platform.

  • Shared Backend: The IDE extension (for VS Code, etc.) and the CLI are two different clients for the same central Kiro system.
  • Configure Once, Use Everywhere: Configurations, agents, and knowledge bases are shared between them. You can add a knowledge folder using the IDE’s graphical interface, and it will be immediately available to you when using the CLI, and vice-versa. Your agents and their knowledge are not trapped in one environment.

Important Limitation: No Structured Parameters

It’s critical to understand that Kiro’s /knowledge feature works via semantic search and context injection. It finds relevant text from your knowledge base and stuffs it into the prompt that gets sent to Claude.

This is different from a native Claude tool-use system where you can define functions with explicit, structured parameters.

What this means for your “Skill” notes:

  • You cannot define a skill with named parameters like def write_tweet(product_name, feature):.
  • Your skill notes must be written as self-contained, descriptive prompts.
  • Any variable information (like a product name or a specific topic) must be provided naturally as part of your conversational request to the kiro command. The AI will use the retrieved skill context to understand how to apply that information.