Git backend
🚧 설계 단계 — 아직 구현 안 됨
이 페이지는 ainote 의 향후 기능을 미리 문서화한 것입니다. 현재 @ainote/mcp v1.1.x 에는 vault / sync 도구가 포함돼 있지 않습니다. 도구 호출 시 Tool not found 에러를 받게 됩니다.
ainote 의 vault 는 모두 git 저장소. 데이터는 너의 것.
구조
ainote 서버 (api.ainote.dev)
└── vaults/
└── <user_id>/
└── <vault_name>.git/ ← bare repo
├── HEAD
├── refs/heads/main
├── objects/
└── ...서버에는 bare repo (working tree 없음). 사용자가 clone 해서 working tree 를 로컬에.
URL 패턴
HTTPS: https://api.ainote.dev/vaults/<user>/<vault>.git
SSH: git@api.ainote.dev:vaults/<user>/<vault>.git인증
HTTPS Basic Auth
Username: <email>
Password: <MCP key>.netrc 자동 셋업 (계획됨):
machine api.ainote.dev
login me@example.com
password h7Axq9XPsDTD2qr5yqtcCSaQ...SSH Key
https://ainote.dev/settings/git → "Add SSH key" → 공개키 붙여넣기.
이후:
bash
git clone git@api.ainote.dev:vaults/me/personal.git표준 git 명령
vault clone 후엔 일반 git repo:
bash
cd ~/notes/personal
git log --oneline
git diff
git checkout -b experimental
git push origin experimental
git tag v1
git push --tagsBranch 지원
기본 main. 다른 branch 도 push/pull 가능:
bash
git checkout -b feature
git push origin featureainote MCP 도구는 기본 main 만 — 다른 branch 는 git CLI 직접 사용.
Tag / Release
bash
git tag -a "monthly-backup-2026-05" -m "Backup"
git push --tags특정 시점 복원:
bash
git checkout monthly-backup-2026-05Hooks
서버 hook (계획됨):
pre-receive— 파일 크기 제한 (10MB)post-receive— 다른 디바이스 push 알림
로컬 hook (사용자):
bash
# .git/hooks/pre-commit
#!/bin/bash
# 비밀 keyword 검사
grep -rE "(api_key|password|secret)" --include="*.md" . && exit 1백업 전략
자체 백업
ainote 자체가 백업이지만 추가로:
bash
# 매일 cron
git clone --mirror https://api.ainote.dev/vaults/me/personal.git \
~/backups/$(date +%Y-%m-%d)-personal.gitMirror to GitHub
vault → GitHub 미러:
bash
cd ~/notes/personal
git remote add github git@github.com:me/notes-mirror.git
git push github maincron 으로 정기 push.
크기 / 한도
| 한도 | 무료 | (계획) 유료 |
|---|---|---|
| Vault 개수 | 100 | 무제한 |
| Vault 크기 | 1 GB | 100 GB |
| 파일 1개 | 10 MB | 100 MB |
| 사용자당 총량 | 5 GB | 1 TB |
LFS 미지원 (계획됨).
다른 git host 와 미러
ainote vault ↔ GitHub/GitLab 미러:
bash
cd ~/notes/personal
git remote add ainote https://api.ainote.dev/vaults/me/personal.git
git remote add github git@github.com:me/notes.git
# 양쪽 push
git push ainote main
git push github main자동화 cron 으로.