Skip to content

Commit 0bbfbf8

Browse files
pssah4claude
andcommitted
feat: track _private/ in dev branch + add dev→test sync workflow
- Remove _private/ from .gitignore — now tracked in dev for backup - Add .github/workflows/sync-test.yml: strips _private/ and pushes filtered state to test branch on every push to dev - _private/ contains all internal docs: requirements, architecture, ADRs, arc42, implementation plans, analysis, context files Branch structure: dev (with _private/) → [CI] → test (without _private/) → main → obsilo-public Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 8e83f9b commit 0bbfbf8

72 files changed

Lines changed: 14091 additions & 2 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/sync-test.yml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: Sync dev to test (strip _private/)
2+
3+
on:
4+
push:
5+
branches: [dev]
6+
7+
jobs:
8+
sync:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- name: Checkout obsilo/dev
12+
uses: actions/checkout@v4
13+
with:
14+
fetch-depth: 1
15+
16+
- name: Strip _private/ and restore gitignore entry
17+
run: |
18+
# Remove _private/ from working tree and index
19+
git rm -r --cached _private/ 2>/dev/null || true
20+
rm -rf _private/
21+
22+
# Add _private/ back to .gitignore for test/main branches
23+
echo "" >> .gitignore
24+
echo "# Private / internal files — stripped by CI for test/main" >> .gitignore
25+
echo "_private/" >> .gitignore
26+
27+
git add .gitignore
28+
29+
- name: Commit filtered state
30+
run: |
31+
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
32+
git config user.name "github-actions[bot]"
33+
if ! git diff --cached --quiet; then
34+
git commit -m "chore: strip _private/ for test branch [skip ci]"
35+
fi
36+
37+
- name: Push to test branch
38+
run: |
39+
git push origin HEAD:test --force

.gitignore

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,5 +74,4 @@ temp/
7474
.claude
7575
forked-kilocode/
7676

77-
# Private / internal files — never publish
78-
_private/
77+
# Private / internal files — only tracked in dev branch, filtered out by CI for test/main
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# Obsidian Agent – Product Vision
2+
3+
## 1. Vision
4+
5+
Obsidian Agent ist eine agentische Betriebsschicht für Obsidian.
6+
7+
Es überträgt die Architektur- und Interaktionsprinzipien von Kilo Code
8+
(Tool-Use, Orchestrator, Approval-System, Modes, Checkpoints)
9+
auf den Kontext von Wissensarbeit in Markdown-Vaults.
10+
11+
Obsidian Agent ist nicht nur ein Schreibassistent,
12+
sondern ein kontrollierter Vault-Operator.
13+
14+
---
15+
16+
## 2. Problem Statement
17+
18+
Wissensarbeit in Obsidian leidet unter:
19+
20+
- Manuellem Kontext-Zusammenstellen
21+
- Fehlender Orchestrierung wiederkehrender Workflows
22+
- Risiko bei AI-Edits (kein Diff, kein Restore)
23+
- Keine semantische Vault-Synthese
24+
- Keine automatisierte Canvas/Struktur-Erstellung
25+
26+
---
27+
28+
## 3. Zielbild
29+
30+
Obsidian Agent ermöglicht:
31+
32+
- Agentische Bearbeitung von Notes
33+
- Sichere Vault-Operationen mit Approval
34+
- Canvas-Generierung aus Wissenszusammenhängen
35+
- Semantische Vault-Analyse (lokal)
36+
- Workflow-Automatisierung
37+
- Snapshot-Checkpoints (lokal via isomorphic-git)
38+
39+
---
40+
41+
## 4. Nicht-Ziele
42+
43+
- Kein Cloud-Backend
44+
- Keine Server-Komponente
45+
- Kein Git-Zwang für den User
46+
- Keine Core-Plugin-Hacks
47+
- Kein direkter Zugriff auf Obsidian Memory Graph intern
48+
49+
---
50+
51+
## 5. MVP Positionierung
52+
53+
Desktop-first.
54+
Local-only.
55+
BYO-Model.
56+
Approval-by-default.
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# Capability Scope
2+
3+
## Implementierungsstrategie
4+
5+
V1 und V2 werden beide Teil von 1.0.
6+
V1 definiert die technische Reihenfolge, nicht das finale Scope.
7+
8+
---
9+
10+
# V1 – Core Engine & Stable Infrastructure
11+
12+
## 1 Core Interaction
13+
- 1.1 Sidebar Chat
14+
- 1.2 Modes
15+
- 1.3 Model Provider Layer
16+
17+
## 2 Prompt & Context
18+
- 2.1 Mentions
19+
- 2.2 Prompt Enhancement
20+
- 2.3 Language Support
21+
22+
## 3 Content Operations
23+
- 3.1 Read Tools
24+
- 3.2 Write Tools
25+
- 3.3 Inline Editing
26+
27+
## 4 Vault Operations
28+
- 4.1 File System Ops
29+
- 4.2 Dashboard/View Automation
30+
- 4.5 Command Execution
31+
32+
## 5 Canvas
33+
- 5.2 Graph Projection
34+
35+
## 6 Knowledge Layer
36+
- 6.2 Semantic Index (Local Vector DB)
37+
- 6.3 Vault-wide Analysis
38+
39+
## 7 Workflows
40+
- 7.1 Workflow Engine
41+
- 7.2 Skills
42+
- 7.3 Rules
43+
44+
## 8 Orchestrator
45+
- 8.1 Subtasks
46+
47+
## 9 Governance
48+
- 9.1 Approval System
49+
- 9.2 Checkpoints (isomorphic-git)
50+
- 9.3 Ignore System
51+
52+
---
53+
54+
# V2 – Erweiterte Automatisierung
55+
56+
- 4.4 Template Automation
57+
- 5.1 Canvas Auto Creation
58+
- 6.1 Explicit Graph Analysis
59+
- 8.2 Parallel Agents
60+
- 11 UX Enhancements
61+
62+
---
63+
64+
# Experimentell (nicht 1.0)
65+
66+
- Core Plugin Deep Hooks
67+
- Memory Graph intern
68+
- Full UI Automation
69+
- Mobile-first
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# Research Findings
2+
3+
## Kilo Code Patterns
4+
5+
Übertragbar:
6+
- Tool Registry
7+
- Proposed Actions + Approval
8+
- Modes
9+
- Orchestrator + Subtasks
10+
- Settings per Mode
11+
- Auto-Approve Kategorien
12+
13+
Nicht direkt übertragbar:
14+
- Git-Checkpoints → benötigen eigenes lokales Git-System
15+
16+
---
17+
18+
## Obsidian Plugin API
19+
20+
Stabil:
21+
- Vault CRUD
22+
- MetadataCache
23+
- Backlinks
24+
- Frontmatter
25+
- Command Execution
26+
27+
Canvas:
28+
- .canvas JSON Format
29+
- Direkt erzeugbar
30+
- Keine offizielle API
31+
- JSON-Spec stabil genug
32+
33+
Bases:
34+
- Keine stabile öffentliche API
35+
- Automatisierung riskant
36+
37+
Graph:
38+
- Kein Zugriff auf internen Graph
39+
- Eigener Graph im Plugin möglich
40+
41+
---
42+
43+
## Checkpoint Strategy
44+
45+
Kilo Code nutzt Shadow Git Repo.
46+
47+
Obsidian Agent:
48+
- isomorphic-git
49+
- internes Repo in `.obsidian-agent/checkpoints`
50+
- Commit pro Tool-Action
51+
- Diff + Restore
52+
- Keine externe Git-Abhängigkeit
53+
54+
---
55+
56+
## Indexing
57+
58+
- Local Vector DB
59+
- Chunking
60+
- BYO Embeddings
61+
- Desktop-first
62+
- Mobile später evaluieren
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Architectural Decisions
2+
3+
## ADR-001 Desktop First
4+
Desktop-only MVP.
5+
Mobile später.
6+
7+
## ADR-002 Local Vector DB
8+
Embedding lokal gespeichert.
9+
Provider wählbar via API.
10+
11+
## ADR-003 isomorphic-git Checkpoints
12+
Kein externes Git.
13+
Internes Shadow Repo.
14+
15+
## ADR-004 Approval-by-default
16+
Alle schreibenden Aktionen benötigen Approval. Festlegung von Auto-Approvals für bestimmte Aktionen möglich.
17+
18+
## ADR-005 Kilo Code Clone Principle
19+
UX, Patterns, Tool-Use möglichst identisch zu Kilo Code.
20+
Nur Kontext & Tools werden angepasst.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# Constraints & Non Functional Requirements
2+
3+
- Local only
4+
- Kein Cloud Backend
5+
- Approval required
6+
- Snapshot before write
7+
- Logging aller Tool Actions
8+
- Ignore File: `.obsidian-agentignore`
9+
- Performance bei großen Vaults
10+
- Keine Datenkorruption

_private/context/06_user-flows.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Top 5 User Flows
2+
3+
Not exhaustive and exclusive, just a first set of possibilities. Actual Flows can be adjusted and added by the user by creating Workflows and Modes.
4+
5+
## 1 Meeting → Summary → Tasks
6+
Input: Meeting Note
7+
Output: Strukturierte Summary + Tasks
8+
9+
## 2 Research → Synthesis
10+
Input: Specific Notes & full Vault context + PDFs
11+
Output: Erkenntnisse + strukturierte Synthese
12+
13+
## 3 Inline Writing Assist
14+
Input: Text Selection
15+
Output: Rewrite / Improve / Expand
16+
17+
## 4 Vault Analyse
18+
Input: Thema X
19+
Output: Verwandte Notes + Beziehungskarte
20+
21+
## 5 Projekt-Dokumentation
22+
Input: Verstreute Notes
23+
Output: Konsolidiertes Dokument

_private/context/07_glossary.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
Mode: Agent Persona
2+
Tool: kontrollierte Aktion
3+
Workflow: Multi-Step Prompt Kette
4+
Skill: Wiederverwendbarer Workflow
5+
Checkpoint: Git Snapshot
6+
Vault Ops: Datei/Struktur Manipulation
7+
Semantic Graph: implizite Beziehungen

0 commit comments

Comments
 (0)