Skip to main content
Every agent project is built around two files: AgentCard.json — the source of truth for the agent’s identity — and a Dockerfile. nasiko new scaffolds both.

Project structure

AgentCard.json carries: .nasiko/agent.json is written on your first nasiko deploy. It links the directory to an agent ID on the cluster, so later deploys update that agent instead of creating a new one.

Scaffold a project

With no arguments, nasiko new lists templates from the connected artifact registry (Nasiko’s public registry is connected by default — see artifact registry).
Templates for OpenAI’s Agents SDK, Anthropic’s SDK, CrewAI, LangChain/LangGraph, and Google’s ADK.
Every template produces starter source that already implements the A2A contract. You fill in the skill logic.
The directory name you pass (my-agent above) is not the agent’s name — it’s just where the files land. Templates ship with a fixed placeholder name already set in AgentCard.json (e.g. the openai template always scaffolds as openai-research-agent). Scaffold the same template twice under different directory names and nasiko deploy/nasiko upload will treat both as the same agent, silently updating one record instead of creating two. Edit AgentCard.json’s name field yourself (or run nasiko card) if you want a distinct agent.

Generate or update the agent card

Connected to a cluster, nasiko card uses an LLM to read your source and produce the card. Disconnected, it falls back to interactive prompts. Re-run it whenever you add or change a skill. The platform reads the card at deploy time to populate the agent registry — it doesn’t watch your source.

Validate before you build

Checks that AgentCard.json and Dockerfile exist and are well-formed. Run it after scaffolding and before your first deploy.

Next

Run and chat locally

Build the image and start chatting.

A2A agents and frameworks

What your agent must expose to be a valid A2A peer.