Files
AGENTS/skills/outline/SKILL.md
m3tm3re e2932d1d84 Implement Phase 1: Work integration (without n8n)
Skills Created:
- outline: Full MCP integration with Outline wiki (search, read, create, export, AI queries)
- Enhanced basecamp: Added project mapping configuration to PARA structure
- Enhanced daily-routines: Integrated work context (Basecamp, Outline) into daily/weekly workflows
- Enhanced meeting-notes: Added Teams transcript processing workflow guide

PARA Work Structure Created:
- 01-projects/work/: 10 project folders with MOCs (placeholders for user customization)
- 02-areas/work/: 5 area files (current-job, professional-dev, team-management, company-knowledge, technical-excellence)
- 03-resources/work/wiki-mirror/: Ready for Outline exports
- 04-archive/work/: Ready for completed work

Documentation Added:
- skills/outline/SKILL.md: Comprehensive wiki workflows and tool references
- skills/outline/references/outline-workflows.md: Detailed usage examples
- skills/outline/references/export-patterns.md: Obsidian integration patterns
- skills/meeting-notes/references/teams-transcript-workflow.md: Manual DOCX → meeting note workflow
- skills/chiron-core/references/work-para-structure.md: Work-specific PARA organization

Key Integrations:
- Basecamp ↔ Obsidian: Project mapping and task sync
- Outline ↔ Obsidian: Wiki search, export decisions, knowledge discovery
- Teams → Obsidian: Transcript processing with AI analysis
- All integrated into daily/weekly routines

Note: n8n workflows skipped per user request. Ready for n8n automation later.
2026-01-28 18:58:49 +01:00

485 lines
12 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: outline
description: "Search, read, and manage Outline wiki documentation via MCP. Use when: (1) searching Outline wiki, (2) reading/exporting Outline documents, (3) creating/updating Outline docs, (4) managing collections, (5) finding wiki content. Triggers: outline, wiki, search outline, find in wiki, export document."
compatibility: opencode
---
# Outline Wiki Integration
MCP server integration for Outline wiki documentation - search, read, create, and manage wiki content.
## Quick Reference
| Action | Command Pattern |
| --------------- | -------------------------------------- |
| Search wiki | "Search Outline for [topic]" |
| Read document | "Show me [document name]" |
| Export to vault | "Export [document] to Obsidian" |
| Create doc | "Create Outline doc: [title]" |
| List collections | "Show Outline collections" |
## Core Workflows
### 1. Search Wiki
**When user says**: "Search Outline for X", "Find in wiki about X", "Outline wiki: X"
**Steps**:
```
1. search_documents(query, collection_id?, limit?, offset?)
- If collection_id provided → search in specific collection
- If no collection_id → search all collections
- Default limit: 20 results
2. Present results:
- Document titles
- Collection names
- Relevance (if available)
3. Offer actions:
- "Read specific document"
- "Export to Obsidian"
- "Find related documents"
```
**Example output**:
```
Found 5 documents matching "API authentication":
📄 Authentication Best Practices (Collection: Engineering)
📄 OAuth2 Setup Guide (Collection: Security)
📄 API Key Management (Collection: DevOps)
📄 Common Auth Errors (Collection: Troubleshooting)
Read any document or export to Obsidian?
```
### 2. Read Document
**When user says**: "Show me [document]", "What's in [document]", "Read [doc from Outline]"
**Steps**:
```
1. get_document_id_from_title(query, collection_id?)
- Search by exact title
- Return document ID
2. read_document(document_id)
- Get full markdown content
3. Present content:
- Title and metadata
- Document content (formatted)
- Collection location
- Tags (if available)
4. Offer follow-up:
- "Export to Obsidian?"
- "Find related documents?"
- "Add to project?"
```
**Example output**:
```markdown
# Authentication Best Practices
**Collection**: Engineering
**Last updated**: 2026-01-25
## OAuth2 Flow
[Document content...]
## API Keys
[Document content...]
---
📂 Export to Obsidian | 🔗 Find related | Add to project
```
### 3. Export to Obsidian
**When user says**: "Export [document] to Obsidian", "Save [wiki page] to vault"
**Steps**:
```
1. export_document(document_id)
- Get markdown content
2. Determine Obsidian location:
- If for project: `01-projects/work/[project]/notes/[doc-name].md`
- If general: `03-resources/work/wiki-mirror/[doc-name].md`
3. Add frontmatter:
---
title: "[Document Title]"
source: outline
document_id: [ID]
collection: "[Collection Name]"
tags: [work, wiki, outline]
---
4. Create file in vault
5. Link to context:
- Project: [[Project Name]]
- Related resources
6. Confirm: "Exported [document] to [location]"
```
**File naming**:
- Convert to kebab-case: `Authentication Best Practices``authentication-best-practices.md`
- Preserve collection hierarchy: `[collection-name]/[doc-name].md`
### 4. Create Document
**When user says**: "Create Outline doc: [title]", "Add wiki page: [title]"
**Steps**:
```
1. Ask for details:
- Collection (list available if needed)
- Content (markdown text)
- Parent document (if hierarchical)
- Publish immediately?
2. create_document(title, collection_id, text?, parent_document_id?, publish?)
3. Confirm creation:
- Document ID
- URL (if Outline has web UI)
4. Offer actions:
- "Add backlink?"
- "Create in Obsidian too?"
- "Link to project?"
```
### 5. Document Discovery
**When user says**: "Show Outline collections", "Browse wiki", "What's in [collection]?"
**Steps**:
```
1. list_collections()
- Get all collections with metadata
2. Present hierarchy:
- Collection names
- Document counts
- Colors (if set)
3. User selects collection
4. get_collection_structure(collection_id)
- Show document tree
- Hierarchical view
```
**Example output**:
```
Outline Wiki Collections:
📁 Engineering (15 docs)
├─ API Documentation (8 docs)
└─ System Design (7 docs)
📁 Product (12 docs)
├─ Features (6 docs)
└─ User Guides (6 docs)
📁 Security (8 docs)
Browse which collection?
```
### 6. AI-Powered Search
**When user says**: "Ask Outline about X", "What does Outline say about X?"
**Steps**:
```
1. ask_ai_about_documents(question, collection_id?, document_id?)
- Natural language query
- AI searches across documents
2. Present AI answer:
- Summary of findings
- Source documents referenced
- Confidence (if available)
3. Offer:
- "Read source documents"
- "Export to Obsidian"
```
**Example output**:
```
🤖 Answer from Outline wiki:
Based on 12 documents, here's what I found about API authentication:
**Summary**:
- OAuth2 is preferred over API keys
- Tokens expire after 30 days
- Refresh tokens allow seamless re-authentication
**Key Sources**:
1. OAuth2 Setup Guide (Engineering/Security)
2. Authentication Best Practices (Engineering)
3. Token Management (DevOps)
Read any source document?
```
## Tool Reference
### Search & Discovery
- `search_documents(query, collection_id?, limit?, offset?)`
- Full-text search across wiki
- Optional: Scope to specific collection
- Pagination support
- `list_collections()`
- Get all collections with metadata
- Names, descriptions, colors, doc counts
- `get_collection_structure(collection_id)`
- Hierarchical document tree
- Parent-child relationships
- `get_document_id_from_title(query, collection_id?)`
- Find document by title
- Exact or fuzzy match
### Document Reading
- `read_document(document_id)`
- Full document content
- Markdown format
- Metadata included
- `export_document(document_id)`
- Export as markdown
- Same content as read_document
- Designed for exports
### Document Management
- `create_document(title, collection_id, text?, parent_document_id?, publish?)`
- Create new wiki page
- Support for hierarchical docs
- Draft or published
- `update_document(document_id, title?, text?, append?)`
- Update existing document
- Append mode for additions
- Preserve history
- `move_document(document_id, collection_id?, parent_document_id?)`
- Move between collections
- Reorganize hierarchy
### Document Lifecycle
- `archive_document(document_id)`
- Archive (not delete)
- Can be restored
- `unarchive_document(document_id)`
- Restore from archive
- `delete_document(document_id, permanent?)`
- Move to trash or permanent delete
- Requires careful confirmation
### Comments & Collaboration
- `add_comment(document_id, text, parent_comment_id?)`
- Add threaded comments
- Support for replies
- `list_document_comments(document_id, include_anchor_text?, limit?, offset?)`
- View discussion on document
- Threaded view
- `get_document_backlinks(document_id)`
- Find documents linking here
- Useful for context
### Collection Management
- `create_collection(name, description?, color?)`
- Create new collection
- For organizing docs
- `update_collection(collection_id, name?, description?, color?)`
- Edit collection metadata
- `delete_collection(collection_id)`
- Remove collection
- Affects all documents in it
- `export_collection(collection_id, format?)`
- Export entire collection
- Default: outline-markdown
- `export_all_collections(format?)`
- Export all wiki content
- Full backup
### Batch Operations
- `batch_create_documents(documents)`
- Create multiple docs at once
- For bulk imports
- `batch_update_documents(updates)`
- Update multiple docs
- For maintenance
- `batch_move_documents(document_ids, collection_id?, parent_document_id?)`
- Move multiple docs
- Reorganization
### AI-Powered
- `ask_ai_about_documents(question, collection_id?, document_id?)`
- Natural language queries
- AI-powered search
- Synthesizes across documents
## Integration with Other Skills
| From Skill | To Outline |
| ----------- | ---------- |
| meeting-notes | Export decisions to wiki |
| project-structures | Link project docs to wiki |
| daily-routines | Capture learnings in wiki |
| brainstorming | Save decisions to wiki |
## Integration with Obsidian
### Export Workflow
**When to export**:
- Important decisions made
- Project documentation needed offline
- Wiki content to reference locally
- Job transition (export all)
**Export locations**:
```
~/CODEX/
├── 01-projects/work/
│ └── [project]/
│ └── notes/
│ └── [exported-doc].md # Linked to project
└── 03-resources/work/
└── wiki-mirror/
├── [collection-name]/
│ └── [doc].md # Exported wiki pages
└── _wiki-index.md # Index of all exports
```
**Wiki index structure**:
```markdown
---
title: "Outline Wiki Index"
source: outline
last_sync: YYYY-MM-DD
---
## Collections
- [Engineering](engineering/) - 15 docs
- [Product](product/) - 12 docs
- [Security](security/) - 8 docs
## Recently Exported
- [[OAuth2 Setup Guide]] - 2026-01-25
- [[API Documentation]] - 2026-01-24
- [[System Design]] - 2026-01-23
## Search Wiki
<!-- Use outline MCP for live search -->
"Search Outline for..." → outline skill
```
## Access Control Notes
If Outline MCP is configured with `OUTLINE_READ_ONLY=true`:
- ❌ Cannot create documents
- ❌ Cannot update documents
- ❌ Cannot move/archive/delete
- ✅ Can search and read
- ✅ Can export documents
If `OUTLINE_DISABLE_DELETE=true`:
- ✅ Can create and update
- ❌ Cannot delete (protects against accidental loss)
## Work vs Personal Usage
### Work Wiki (Primary)
- Collections: Engineering, Product, Security, etc.
- Export to: `03-resources/work/wiki-mirror/`
- Projects link to: `[[Engineering/Design Decisions]]`
### Personal Wiki (Optional)
- Collections: Recipes, Travel, Hobbies, etc.
- Export to: `03-resources/personal/wiki/`
- Separate from work content
## Best Practices
### Searching
- Use specific keywords (not "everything about X")
- Use collection_id for focused search
- Check multiple collections if first search is limited
### Exporting
- Export decisions, not just reference docs
- Link exported docs to projects immediately
- Update wiki index after export
- Regular exports for offline access
### Creating Documents
- Use clear, descriptive titles
- Add to appropriate collection
- Link related documents
- Add tags for discoverability
### AI Queries
- Ask specific questions (not "everything about X")
- Use collection_id to scope query
- Verify AI sources by reading docs
- Use AI to synthesize, not replace reading
## Error Handling
### Document Not Found
1. Check title spelling
2. Try fuzzy search
3. Search collection directly
### Collection Not Found
1. List all collections
2. Check collection name
3. Verify access permissions
### Export Failed
1. Check Obsidian vault path
2. Verify disk space
3. Check file permissions
4. Create directories if needed
### Rate Limiting
- Outline MCP handles automatically with retries
- Reduce concurrent operations if persistent errors
## Quick Reference
| Action | Command Pattern |
|--------|-----------------|
| Search wiki | "Search Outline for [topic]" |
| Read document | "Show me [document name]" |
| Export to vault | "Export [document] to Obsidian" |
| Create doc | "Create Outline doc: [title]" |
| List collections | "Show Outline collections" |
| AI query | "Ask Outline about [question]" |
| Browse structure | "Browse wiki" or "Show Outline collections" |
## Resources
- `references/outline-workflows.md` - Detailed workflow examples
- `references/export-patterns.md` - Obsidian integration patterns
**Load references when**:
- Designing complex exports
- Troubleshooting integration issues
- Setting up project-to-wiki links