VERSA is the canonical specification for portable agent configuration. It defines a standard .ai/ folder structure that works across Cursor, Windsurf, Claude, Aider, and any future AI coding tool.
Every AI coding tool has its own config format:
- π΄ Cursor uses
.cursorrulesand workspace settings - π΅ Windsurf has its own configuration
- π’ Claude projects have different structures
- π‘ Aider uses
.aider.conf.yml
Result: Your project context is fragmented and tool-specific.
your-project/
βββ .ai/
βββ context.json # Base configuration
βββ profiles/
β βββ cursor.json # Cursor-specific overrides
β βββ windsurf.json # Windsurf-specific overrides
β βββ claude.json # Claude-specific overrides
βββ rules/
β βββ style.md # Code style guidelines
β βββ security.md # Security policies
βββ agents/
β βββ code-reviewer.json
βββ tools/
βββ mcp-servers.json
One folder. Every runtime. Portable forever.
|
Write once, run anywhere. Your Explicit permission model: deny β ask β allow. Secret bindings and redaction built-in. |
Plain JSON and Markdown. Human-readable. Git-friendly. Easy to diff and review. 8 canonical primitives: Rules, Prompts, Agents, Memory, Knowledge, Tools, Settings, Permissions. |
| Category | Purpose | Example |
|---|---|---|
| π Rules | Persistent project context | Code style, architecture patterns |
| π¬ Prompts | Reusable templates with variables | Bug report template, feature spec |
| π€ Agents | Declarative agent configurations | Code reviewer, documentation writer |
| π§ Memory | Retention policies and notes | Session memory, project knowledge |
| π Knowledge | Document ingestion config | Docs, repos, URLs to index |
| π οΈ Tools | MCP servers and HTTP APIs | Custom tools and capabilities |
| βοΈ Settings | Model routing and preferences | GPT-4, Claude, temperature settings |
| π‘οΈ Permissions | Security policy enforcement | File access, network calls, secrets |
# Using the CLI (coming soon)
npx @dotaislash/cli init
# Or manually create
mkdir .ai
cd .ai
touch context.json
mkdir profiles rules agents tools// .ai/context.json
{
"version": "1.0",
"rules": ["rules/style.md", "rules/security.md"],
"context": ["src/**/*.ts", "docs/**/*.md"],
"agents": ["agents/code-reviewer.json"],
"settings": {
"model": "claude-sonnet-4",
"temperature": 0.7
}
}// .ai/profiles/cursor.json
{
"version": "1.0",
"merge": "deep",
"settings": {
"shortcuts": {
"review": "agents/code-reviewer.json"
}
}
}<!-- .ai/rules/style.md -->
ai:meta
priority: high
attach: always
---
# Code Style
- Use TypeScript strict mode
- Prefer functional components
- Maximum line length: 100 characters
|
|
graph LR
A[Your Project] --> B[.ai/ Folder]
B --> C[VERSA Spec]
C --> D[Adapters]
D --> E[Cursor]
D --> F[Windsurf]
D --> G[Claude]
D --> H[Aider]
D --> I[Custom Tools]
- π dotaislash-spec - This repository (canonical spec)
- π§ dotaislash-cli - Reference CLI tool
- π dotaislash-schemas - JSON Schema definitions
- π dotaislash-examples - Example configurations
- β dotaislash-conformance - Test suite
- π dotaislash-adapters - Tool adapters
We welcome contributions! VERSA is built openly with the community.
- π¬ Join Discussions - Ask questions, share ideas
- π Report Issues - Found a problem? Let us know
- π Propose Features - Have an idea? Open an RFC
- π§ Build Adapters - Support a new tool
- π Improve Docs - Help others understand
# Clone the repository
git clone https://github.com/dotAIslash/dotaislash-spec.git
cd dotaislash-spec
# Read the spec
cat SPEC.md
# Check examples
cd examples/
# Run conformance tests (once available)
npm testSee CONTRIBUTING.md for detailed guidelines.
| Component | Status |
|---|---|
| Specification | π‘ Draft (v1.0) |
| JSON Schemas | π‘ In Progress |
| CLI Tool | π‘ In Progress |
| Adapters | π΄ Planned |
| Conformance Suite | π΄ Planned |
| Documentation | π‘ In Progress |
Legend: π’ Stable Β· π‘ In Progress Β· π΄ Planned
- β Core specification
- β Website launch
- β³ JSON Schemas complete
- β³ Reference CLI
- β³ Basic adapters (Cursor, Windsurf)
- π¦ npm packages published
- π Community adapters
- π Comprehensive examples
- π Integration tutorials
- π§ͺ Conformance certification
- π€ Tool vendor partnerships
- π Usage analytics
- π Multi-language support
- π Advanced security features
- π Performance optimizations
Boring is Beautiful
VERSA uses plain JSON and Markdown. No DSLs. No magic. Just simple, portable formats that work everywhere.
Convention over Configuration
Sensible defaults. Minimal required fields. Override only what you need.
Security by Default
Explicit permissions. Deny-first policies. Secrets never in code.
CC BY 4.0 Β© Alphin Tom
This specification is licensed under the Creative Commons Attribution 4.0 International License.
You are free to share and adapt this specification for any purpose, even commercially, as long as you provide appropriate attribution.
See LICENSE for full details.
- π Website: dotaislash.github.io
- π¬ Discussions: GitHub Discussions
- π Issues: GitHub Issues
- π€ Author: Alphin Tom
Built with π₯ by the dotAIslash community
β Star us on GitHub Β· π¦ Follow updates Β· π¬ Join the discussion
