
Drive9
- 35 installs
- 76 repo stars
- Updated August 4, 2026
- vm0-ai/vm0-skills
Helps with ai & agent building tasks during AI-assisted development.
About
drive9 is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted coding.
- drive9
- AI & Agent Building
- AI-coding skill
Drive9 by the numbers
- 35 all-time installs (skills.sh)
- Ranked #8,740 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/vm0-ai/vm0-skills --skill drive9Add your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 35 |
|---|---|
| repo stars | ★ 76 |
| Last updated | August 4, 2026 |
| Repository | vm0-ai/vm0-skills ↗ |
What it does
Helps with ai & agent building tasks during AI-assisted development.
Files
Troubleshooting
If requests fail, run zero doctor check-connector --env-name DRIVE9_TOKEN or zero doctor check-connector --url https://api.drive9.ai/v1/fs/ --method GET.
How It Works
drive9 is a filesystem-like API for AI agents. Files are auto-embedded and full-text indexed so they can be retrieved by meaning, not just filename. Small files (<50 KB) live in db9 with instant embedding; large files go to S3 via presigned URLs. A single path namespace spans both tiers.
Account (DRIVE9_TOKEN)
└── Filesystem
├── Files (auto-embedded + FTS indexed)
├── Directories
│ ├── .abstract.md (~100 tokens, L0 scan)
│ └── .overview.md (~1k tokens, L1 scan)
└── Semantic search indexBase URL: https://api.drive9.ai
All filesystem operations use the unified /v1/fs/{path} endpoint with method verbs and presence-based query-string modifiers. For example, ?list and ?list=1 are equivalent because the server checks for parameter presence.
Authentication
Use a drive9 API key as a bearer token:
Authorization: Bearer $DRIVE9_TOKENThe server also accepts X-API-Key: $DRIVE9_TOKEN for compatibility. Get a key via the drive9.ai console or the drive9 create CLI.
Environment Variables
| Variable | Description |
|---|---|
DRIVE9_TOKEN | drive9 API key |
Key Endpoints
1. Write a File
Body is the raw file contents. Replace <path> with a path such as notes/todo.md:
curl -s -X PUT "https://api.drive9.ai/v1/fs/<path>" --header "Authorization: Bearer $DRIVE9_TOKEN" --header "Content-Type: text/markdown" --data-binary @/tmp/payload.txtOptional write headers:
| Header | Use |
|---|---|
X-Dat9-Expected-Revision | Conditional write to prevent overwriting a newer revision |
X-Dat9-Tag: key=value | Add a file tag on small-file writes |
X-Dat9-Description | Add a file description |
2. Read a File
curl -s "https://api.drive9.ai/v1/fs/<path>" --header "Authorization: Bearer $DRIVE9_TOKEN"3. List a Directory
curl -s "https://api.drive9.ai/v1/fs/<path>?list" --header "Authorization: Bearer $DRIVE9_TOKEN"4. Stat
Lightweight stat via headers:
curl -s -I "https://api.drive9.ai/v1/fs/<path>" --header "Authorization: Bearer $DRIVE9_TOKEN"JSON metadata stat:
curl -s "https://api.drive9.ai/v1/fs/<path>?stat" --header "Authorization: Bearer $DRIVE9_TOKEN"5. Delete a File or Directory
curl -s -X DELETE "https://api.drive9.ai/v1/fs/<path>" --header "Authorization: Bearer $DRIVE9_TOKEN"Recursive delete:
curl -s -X DELETE "https://api.drive9.ai/v1/fs/<path>?recursive" --header "Authorization: Bearer $DRIVE9_TOKEN"6. Make a Directory
curl -s -X POST "https://api.drive9.ai/v1/fs/<path>?mkdir" --header "Authorization: Bearer $DRIVE9_TOKEN"7. Zero-Copy Duplicate
One file can appear at multiple paths without re-uploading. The server expects X-Dat9-Copy-Source:
curl -s -X POST "https://api.drive9.ai/v1/fs/<destination>?copy" --header "Authorization: Bearer $DRIVE9_TOKEN" --header "X-Dat9-Copy-Source: <source-path>"8. Rename
The server expects X-Dat9-Rename-Source:
curl -s -X POST "https://api.drive9.ai/v1/fs/<new-path>?rename" --header "Authorization: Bearer $DRIVE9_TOKEN" --header "X-Dat9-Rename-Source: <old-path>"9. Search and Find
Content search:
curl -s --get "https://api.drive9.ai/v1/fs/<path>" --header "Authorization: Bearer $DRIVE9_TOKEN" --data-urlencode "grep=<query>" --data-urlencode "limit=20"Find files by attributes:
curl -s --get "https://api.drive9.ai/v1/fs/<path>" --header "Authorization: Bearer $DRIVE9_TOKEN" --data-urlencode "find=" --data-urlencode "name=*.md"10. Batch Operations
Batch stat:
curl -s -X POST "https://api.drive9.ai/v1/fs:batch-stat" --header "Authorization: Bearer $DRIVE9_TOKEN" --header "Content-Type: application/json" --data-binary '{"paths":["/notes/a.md","/notes/b.md"]}'Batch read small files:
curl -s -X POST "https://api.drive9.ai/v1/fs:batch-read-small" --header "Authorization: Bearer $DRIVE9_TOKEN" --header "Content-Type: application/json" --data-binary '{"paths":["/notes/a.md"],"max_bytes":50000}'11. Large File Uploads
For large files, prefer the drive9 CLI or SDK. If calling HTTP directly, use the V2 multipart upload flow:
POST /v2/uploads/initiate
POST /v2/uploads/{id}/presign
POST /v2/uploads/{id}/presign-batch
POST /v2/uploads/{id}/complete
POST /v2/uploads/{id}/abortAdvanced append uploads use POST /v1/fs/{path}?append with a JSON body such as {"append_size":123,"part_size":5242880}. It returns an append upload plan; it does not append raw request bytes directly.
12. Change Events
SSE change stream:
curl -N "https://api.drive9.ai/v1/events" --header "Authorization: Bearer $DRIVE9_TOKEN"Common Workflow: Persistent Agent Notes with Semantic Search
# 1. Create a directory
curl -s -X POST "https://api.drive9.ai/v1/fs/notes?mkdir" --header "Authorization: Bearer $DRIVE9_TOKEN"
# 2. Write an abstract so future agents can skim this directory cheaply
echo "Research notes on agent memory systems." > /tmp/drive9_abstract.md
curl -s -X PUT "https://api.drive9.ai/v1/fs/notes/.abstract.md" --header "Authorization: Bearer $DRIVE9_TOKEN" --header "Content-Type: text/markdown" --data-binary @/tmp/drive9_abstract.md
# 3. Write a note
cat > /tmp/drive9_note.md << 'NOTE'
# Mem9 architecture
Cloud-persistent memory with hybrid vector + keyword search.
NOTE
curl -s -X PUT "https://api.drive9.ai/v1/fs/notes/mem9-arch.md" --header "Authorization: Bearer $DRIVE9_TOKEN" --header "Content-Type: text/markdown" --data-binary @/tmp/drive9_note.md
# 4. List
curl -s "https://api.drive9.ai/v1/fs/notes?list" --header "Authorization: Bearer $DRIVE9_TOKEN"
# 5. Search
curl -s --get "https://api.drive9.ai/v1/fs/notes" --header "Authorization: Bearer $DRIVE9_TOKEN" --data-urlencode "grep=memory systems" --data-urlencode "limit=20"
# 6. Read back
curl -s "https://api.drive9.ai/v1/fs/notes/mem9-arch.md" --header "Authorization: Bearer $DRIVE9_TOKEN"Guidelines
1. Use --data-binary (not -d) when writing files so bytes are preserved. 2. Populate .abstract.md (~100 tokens) and .overview.md (~1k tokens) in each directory so agents can scan L0/L1 before loading full content - 10x token savings. 3. Small files (<50 KB) are embedded and FTS-indexed automatically; large files go to S3 and are served via presigned URLs. 4. ?copy and ?rename are O(1) metadata operations - prefer them over re-upload.