skills/docs/worklogs/2025-12-28-niri-robustness-opencode-research-readme-update.org
dan e209db9230 docs: worklog for niri fixes, opencode research, readme update
Session covered:
- skills-m21: niri-window-capture robustness improvements
- skills-czz: OpenCode agents research
- skills-4yn: screenshot-latest deployment
- skills-a23: README update with all 14 skills

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 22:10:24 -05:00

6.3 KiB

Niri Robustness Fixes, OpenCode Research, and README Update

Session Summary

Date: 2025-12-28 (Continuation from earlier 2025-12-28 session)

Focus Area: Implementing code review fixes, researching OpenCode, deployment decisions, documentation

Accomplishments

  • Applied all 4 high-priority niri-window-capture code review recommendations (skills-m21)
  • Added dependency checks to all 3 niri-window-capture scripts
  • Added screenshot directory validation with auto-creation
  • Improved error handling for niri command failures
  • Added audit logging to capture-all-windows.sh
  • Moved skills-e8h (waybar+niri) to dotfiles repo where it belongs
  • Researched OpenCode agents and documented findings (skills-czz)
  • Decided to deploy screenshot-latest skill (skills-4yn)
  • Deployed screenshot-latest to dotfiles claudeCodeSkills and openCodeSkills
  • Ran dotfiles deploy.sh to activate new skills
  • Updated README with table of all 14 skills (skills-a23)

Key Decisions

Decision 1: Deploy screenshot-latest skill

  • Context: Skill was complete but marked "Pending decision" in DEPLOYMENT.md
  • Options considered:

    1. Deploy globally - low risk, useful for avoiding path typing
    2. Keep pending - no clear reason to delay
    3. Archive - would lose a useful capability
  • Rationale: Read-only skill with no security concerns, complements niri-window-capture
  • Impact: Added to both claudeCodeSkills and openCodeSkills in dotfiles

Decision 2: Table format for README skills list

  • Context: Previous README had verbose 2-skill descriptions, repo now has 14 skills
  • Options considered:

    1. Verbose descriptions for all - too long, maintenance burden
    2. Table with status column - compact, shows deployment state
    3. Just names - loses context
  • Rationale: Table provides at-a-glance overview with deployment status
  • Impact: README now shows all 14 skills categorized as Deployed/Available/Development

Problems & Solutions

Problem Solution Learning
skills-e8h filed in wrong repo Closed in skills, created dotfiles-7ri Waybar config lives in dotfiles, not skills
Remote git server still down Local commits only, bd sync partially works 30+ commits queued for push when server returns
niri scripts lacked robustness Added dependency checks, error handling, logging Defense in depth even for "simple" scripts

Technical Details

Code Changes

  • Total files modified: 8
  • Key files changed:

    • skills/niri-window-capture/scripts/capture-focused.sh - Added dependency checks, directory validation, error handling
    • skills/niri-window-capture/scripts/capture-by-title.sh - Same robustness improvements
    • skills/niri-window-capture/scripts/capture-all-windows.sh - Added logging, cached window query, graceful failure handling
    • DEPLOYMENT.md - Updated OpenCode agents section with research findings
    • DEPLOYMENT.md - Updated skills status table (screenshot-latest, niri-window-capture now deployed)
    • README.md - Replaced verbose skill list with comprehensive table
    • ~/proj/dotfiles/home/claude.nix - Added screenshot-latest to both skill lists

Commands Used

# Deploy dotfiles changes
cd ~/proj/dotfiles && ./bin/deploy.sh

# Verify skills deployed
ls -la ~/.claude/skills/

# Move issue to correct repo
bd close skills-e8h --reason="Moved to dotfiles repo"
cd ~/proj/dotfiles && bd create --title="..." --type=task

Architecture Notes

  • OpenCode reads skills from ~/.claude/skills/ (Claude-compatible path)
  • OpenCode has Build (full access) and Plan (read-only) built-in agents
  • Skills are global to all agents, permissions control per-agent access
  • niri-window-capture now caches window list query instead of re-querying per window

Process and Workflow

What Worked Well

  • TodoWrite for tracking the 4 niri-window-capture fixes
  • Quick issue turnaround: show -> claim -> fix -> commit -> close
  • Web search + fetch for OpenCode documentation research
  • Table format in README scales better than verbose descriptions

What Was Challenging

  • Remote git server down entire session (local commits only)
  • Remember to file issues in correct repo (dotfiles vs skills)

Learning and Insights

Technical Insights

  • OpenCode supports .claude/skills/ path - no separate deployment needed
  • OpenCode agents are like "modes" with different tool access, not separate personalities
  • Always cache expensive queries (window list) when iterating

Process Insights

  • Code review recommendations are actionable when specific
  • "Available" vs "Deployed" status distinction useful for tracking

Architectural Insights

  • Skills repo has 14 skills now: 5 deployed, 8 available, 1 template
  • Skills work with both Claude Code and OpenCode from same path

Context for Future Work

Open Questions

  • When will git server come back online? 30+ commits queued
  • Should we add rate limiting to capture-all-windows.sh for many windows?

Next Steps

  • Push all local commits when server available
  • Consider remaining ready issues (vb5, al5, x2l, rpf, etc.)
  • Run code-review on other skills as validation

Related Work

Raw Notes

  • Session was continuation from earlier today (context recovery from compaction)
  • OpenCode docs: https://opencode.ai/docs/agents/ and https://opencode.ai/docs/skills/
  • niri-window-capture scripts now have consistent LOG_TAG="niri-capture" across all 3
  • DEPLOYMENT.md niri-window-capture was showing "awaiting security review" but already deployed - fixed

Issues Closed This Session

  • skills-m21: Apply niri-window-capture code review recommendations
  • skills-e8h: Moved to dotfiles as dotfiles-7ri
  • skills-czz: Research OpenCode agents for skill integration
  • skills-4yn: Decide on screenshot-latest skill deployment
  • skills-a23: Update main README to list all 14 skills

Session Metrics

  • Commits made: 6 (in skills repo)
  • Files touched: 8
  • Lines added/removed: +178/-59
  • Issues closed: 5
  • Tests added: 0