- Transform tufte-press from reference guide to conversation-aware generator - Add JSON generation from conversation context following strict schema - Create build automation scripts with Nix environment handling - Integrate CUPS printing with duplex support - Add comprehensive workflow documentation Scripts added: - skills/tufte-press/scripts/generate-and-build.sh (242 lines) - skills/tufte-press/scripts/build-card.sh (23 lines) Documentation: - Updated SKILL.md with complete workflow instructions (370 lines) - Updated README.md with usage examples (340 lines) - Created SKILL-DEVELOPMENT-STRATEGY-tufte-press.md (450 lines) - Added worklog: 2025-11-10-tufte-press-skill-evolution.org Features: - Agent generates valid JSON from conversation - Schema validation before build (catches errors early) - Automatic Nix shell entry for dependencies - PDF build via tufte-press toolchain - Optional print with duplex support - Self-contained margin notes enforced - Complete end-to-end testing Workflow: Conversation → JSON → Validate → Build → Print Related: niri-window-capture, screenshot-latest, worklog skills
222 lines
8.1 KiB
Markdown
222 lines
8.1 KiB
Markdown
# Skill Development Strategy: prox-setup Document Workflow
|
|
|
|
**Analysis Date**: 2025-11-09
|
|
**Context**: prox-setup repository has mature worklog/documentation workflow that could be a skill
|
|
**Decision**: Where should this skill be developed?
|
|
|
|
## The Workflow to Capture
|
|
|
|
### What prox-setup Has
|
|
|
|
**Document Management Scripts** (`scripts/shell/`):
|
|
1. **compress_worklog.sh** - Creates compressed daily summaries with git activity
|
|
2. **archive_old_worklogs.sh** - Archives worklogs >30 days to year directories
|
|
3. **worklog_maintenance.sh** - Likely combines the above
|
|
|
|
**Documentation Structure** (`docs/`):
|
|
- 206 org-mode files total
|
|
- **worklogs/** - Active daily logs (last 30 days)
|
|
- **worklogs/compressed/daily/** - Daily summaries
|
|
- **worklogs/compressed/weekly/** - Weekly rollups
|
|
- **worklogs/compressed/project/** - High-level summaries
|
|
- **archive/YYYY/** - Historical logs by year
|
|
- **current/** - Active reference docs
|
|
- **INDEX.md** - Navigation guide
|
|
|
|
**Process Pattern**:
|
|
1. Create daily worklogs (org-mode format)
|
|
2. Compress to daily summaries (extract key decisions/problems)
|
|
3. Roll up to weekly summaries
|
|
4. Archive old logs (>30 days) to year directories
|
|
5. Maintain INDEX for navigation
|
|
|
|
## Option A: Build Skill Here (skills repo)
|
|
|
|
### Pros ✅
|
|
- **Centralized skill repository** - All skills in one place
|
|
- **We have the expertise** - Already built worklog skill, tufte-press skill, niri-window-capture
|
|
- **Established patterns** - Module structure, SKILL.md format, testing approach
|
|
- **Nix flake ready** - Can package and deploy immediately
|
|
- **Code review capability** - We can review our own work
|
|
- **Quick turnaround** - We're already in context
|
|
|
|
### Cons ❌
|
|
- **Not their workflow** - We don't use this compression/archival pattern
|
|
- **Less ownership** - They won't have built it themselves
|
|
- **Transfer knowledge required** - Need to teach them how to use/modify it
|
|
- **Might miss nuances** - They know their workflow better than we do
|
|
- **Dependency on us** - Updates/fixes require coming back to this repo
|
|
|
|
### What We'd Build
|
|
```
|
|
skills/worklog-compression/
|
|
├── SKILL.md # Agent instructions for compression workflow
|
|
├── README.md # User documentation
|
|
├── scripts/
|
|
│ ├── compress-daily.sh # Extract key decisions from worklogs
|
|
│ ├── archive-old.sh # Move logs >30 days to archive
|
|
│ ├── generate-weekly.sh # Roll up daily summaries
|
|
│ └── update-index.sh # Maintain documentation INDEX
|
|
├── templates/
|
|
│ ├── daily-summary.org # Compression template
|
|
│ └── weekly-rollup.org # Weekly template
|
|
└── examples/
|
|
└── example-compression.org
|
|
```
|
|
|
|
## Option B: Teach Them (prox-setup agent)
|
|
|
|
### Pros ✅
|
|
- **Ownership** - They build and maintain their own skill
|
|
- **Domain expertise** - They understand the workflow intimately
|
|
- **Learning opportunity** - They learn skill development patterns
|
|
- **Customization** - Can iterate on their own timeline
|
|
- **Independence** - Don't need to wait for us for updates
|
|
- **Better fit** - Skill evolves with their actual needs
|
|
|
|
### Cons ❌
|
|
- **Learning curve** - Need to understand skills architecture
|
|
- **Time investment** - Takes longer than us building it
|
|
- **Documentation burden** - We need to teach the skill development process
|
|
- **Quality risk** - Might not follow best practices initially
|
|
- **Support required** - We'll need to answer questions during development
|
|
|
|
### What We'd Provide
|
|
1. **skills Repository as Reference** - They can see existing skills as examples
|
|
2. **AGENTS.md** - Development guidelines already written
|
|
3. **Template Skill** - `skills/template/` as starting point
|
|
4. **Nix Flake Pattern** - They can add to our flake or create their own
|
|
5. **Code Review** - We review their PRs/commits
|
|
|
|
## Option C: Hybrid Approach (Recommended)
|
|
|
|
### Phase 1: We Build MVP (1-2 hours)
|
|
**Quick prototype in skills repo**:
|
|
- Basic compression skill with their scripts as templates
|
|
- SKILL.md with their workflow documented
|
|
- README with installation instructions
|
|
- Deploy to their ops-dev VM for immediate use
|
|
|
|
### Phase 2: They Take Over (ongoing)
|
|
**Transfer ownership**:
|
|
- Show them the skill structure
|
|
- Point them to AGENTS.md and existing skills
|
|
- They fork/copy to their repo or maintain here
|
|
- They iterate based on real usage
|
|
- We review PRs/provide guidance
|
|
|
|
### Benefits ✅
|
|
- **Immediate value** - Working skill quickly
|
|
- **Learning by example** - Real skill to study and modify
|
|
- **Gradual handoff** - No pressure to learn everything at once
|
|
- **Shared maintenance** - They can improve, we can review
|
|
- **Both gain** - We validate our skill patterns, they get working tool
|
|
|
|
## Recommendation: Option C (Hybrid)
|
|
|
|
### Rationale
|
|
|
|
1. **Time-sensitive** - They're already using worklog compression, need it now
|
|
2. **Teaching vehicle** - A real skill is better than abstract docs
|
|
3. **Risk mitigation** - If they don't have time to learn, they still have working skill
|
|
4. **Community building** - Sets precedent for collaborative skill development
|
|
5. **Pattern validation** - Tests our Nix flake module approach
|
|
|
|
### Implementation Plan
|
|
|
|
**Us (Next 1-2 hours)**:
|
|
1. Create `skills/worklog-compression/` skill
|
|
2. Adapt their existing scripts (compress_worklog.sh, archive_old_worklogs.sh)
|
|
3. Write SKILL.md with their workflow
|
|
4. Add to our Nix flake packages
|
|
5. Document how to use it
|
|
6. Commit to skills repo
|
|
|
|
**Them (When ready)**:
|
|
1. Point them to the skill we built
|
|
2. Show them AGENTS.md and template skill
|
|
3. They test the skill in their environment
|
|
4. They fork/modify to their needs
|
|
5. Optional: They submit improvements back
|
|
|
|
**Collaboration Points**:
|
|
- We review their modifications
|
|
- They report bugs/feature requests
|
|
- We help with Nix packaging if needed
|
|
- Knowledge exchange on workflow patterns
|
|
|
|
### Next Steps
|
|
|
|
1. **Confirm with user** - Is hybrid approach acceptable?
|
|
2. **Build MVP skill** - 1-2 hour effort
|
|
3. **Deploy to ops-dev** - Use our Nix flake module
|
|
4. **Create handoff doc** - How to modify/maintain
|
|
5. **Schedule knowledge transfer** - When they're ready to take over
|
|
|
|
## Comparison: Skills Repo vs Their Repo
|
|
|
|
### If Skill Lives in skills repo (dan/skills)
|
|
|
|
**Pros**:
|
|
- Centralized discovery (one place to find all skills)
|
|
- Our Nix flake already set up
|
|
- Shared improvement (others could use it)
|
|
- Consistent structure (all skills follow same pattern)
|
|
|
|
**Cons**:
|
|
- They need access to this repo to modify
|
|
- Deployment coupling (need to pull this repo)
|
|
- Version sync issues (their changes affect others)
|
|
|
|
### If Skill Lives in Their Repo (dan/prox-setup)
|
|
|
|
**Pros**:
|
|
- Full control (no PRs needed to modify)
|
|
- Independent versioning (break things freely)
|
|
- Deployment coupled to their environment
|
|
- Natural fit (skill alongside the workflow it supports)
|
|
|
|
**Cons**:
|
|
- Not discoverable by others
|
|
- Need to create their own Nix flake (or use ours via input)
|
|
- Duplicate effort if others want similar
|
|
|
|
### Recommendation
|
|
|
|
**Start here, migrate there**:
|
|
1. Build MVP in `dan/skills` (fast iteration, we control)
|
|
2. Once stable, they can:
|
|
- Keep using from our repo (via Nix flake input)
|
|
- Copy to their repo (for full control)
|
|
- Maintain in both (improvements flow back)
|
|
|
|
## Questions for User
|
|
|
|
1. **Timeline**: How urgently do you need this? (affects whether we build or teach)
|
|
2. **Ownership preference**: Do you want to maintain this long-term or prefer we do?
|
|
3. **Learning goal**: Is learning skill development important, or just having working skill?
|
|
4. **Collaboration model**: Comfortable with PRs back to skills repo, or prefer isolation?
|
|
5. **Deployment**: ops-dev only, or other VMs too?
|
|
|
|
## Related Context
|
|
|
|
- **Recent worklog**: 2025-11-09-ops-dev-vm-mobile-connectivity-and-skills-deployment.org
|
|
- They deployed tufte-press skill to ops-dev
|
|
- Used flake bundling approach (environment.etc)
|
|
- Understand skills deployment pattern
|
|
- Already have Forgejo repository for skills
|
|
|
|
- **Their agent knows**:
|
|
- How to write worklogs (206 examples)
|
|
- Shell scripting patterns
|
|
- Git integration patterns
|
|
- Org-mode structure
|
|
|
|
- **We know**:
|
|
- Skill architecture
|
|
- AGENTS.md guidelines
|
|
- Nix flake packaging
|
|
- Testing/validation patterns
|
|
|
|
**Best outcome**: Combine expertise - we scaffold structure, they provide domain knowledge.
|