Agent Skill
2/7/2026

typst

This skill should be used when the user asks about “typst syntax”, “typst formatting”, “typst templates”, “typst functions”, “typst packages”, “typst tables”, “typst math”, “typst bibliography”, or mentions writing documents in Typst. Provides syntax guidance and best practices for the Typst typesetting language.

E
edwinhu
3GitHub Stars
2Views
npx skills add edwinhu/workflows

SKILL.md

Nametypst
DescriptionThis skill should be used when the user asks about “typst syntax”, “typst formatting”, “typst templates”, “typst functions”, “typst packages”, “typst tables”, “typst math”, “typst bibliography”, or mentions writing documents in Typst. Provides syntax guidance and best practices for the Typst typesetting language.

Workflows

A curated collection of development, data science, writing, legal, and research workflows -- available for both Claude Code and OpenCode from a single source.

Quick Start

Claude Code

/plugin marketplace add edwinhu/workflows
/plugin install dev

OpenCode

# Clone the opencode-compatibility branch
git clone -b opencode-compatibility https://github.com/edwinhu/workflows.git ~/.config/opencode/workflows

# Install plugin (optional, recommended)
mkdir -p ~/.config/opencode/plugin
cp ~/.config/opencode/workflows/.opencode/plugin/workflows.js ~/.config/opencode/plugin/

# In OpenCode: find_skills

See .opencode/INSTALL.md for full details and alternatives.


Skills (39)

Core Workflows

Three primary workflows, each with a fresh-start entry and a midpoint re-entry:

Start FreshMidpoint Re-entryDomain
/dev/dev-debug7-phase feature development with TDD enforcement
/ds/ds-fix5-phase data science with output-first verification
/writing/writing-review + /writing-reviseWriting: brainstorm, outline, draft, review, revise

Legal & Citation

SkillPurpose
/bluebookBluebook 21st edition citation formatting (cases, statutes, secondary sources)
/bluebook-audit7-phase document audit: extract, check, report, correct, verify, crossrefs, archive
/docx-footnotesRepair DOCX footnote damage from cloud editors (Google Docs, Word Online)

Data Access

SkillPurpose
/wrdsWRDS PostgreSQL + SAS ETL patterns (Compustat, CRSP, EDGAR, ISS, ExecuComp)
/lseg-dataLSEG Data Library (Refinitiv) for market data, ESG, M&A, PE/VC
/gemini-batchGemini Batch API for large-scale LLM document processing

Knowledge Management

SkillPurpose
/nlmNotebookLM CLI: notebooks, sources, audio overviews, research
/google-scholarGoogle Scholar CLI: search, BibTeX export, cite, download
/readwiseReadwise highlight search and source gathering
/readwise-chatRAG over Readwise highlights via GPT-5.1
/readwise-searchSearch highlights, quotes, annotations by keyword
/readwise-docsReadwise Reader document management (list, save, update, delete)
/readwise-pruneClean up stale Readwise Reader documents
/reading-addAdd file or URL to reading inbox

Scheduling

SkillPurpose
/scheduling-pollCreate Morgen scheduling polls with pre-filled availability via Firestore API

Document Formats

SkillPurpose
/docxWord document creation, editing, tracked changes
/pdfPDF extraction, creation, form filling
/pptxPresentation creation and editing
/xlsxSpreadsheet creation and analysis

Office format skills sourced from anthropics/skills via git submodule.

Notebook Tools

SkillPurpose
/marimoMarimo reactive Python notebooks
/jupytextJupyter notebooks as text files for version control
/notebook-debugDebug runtime errors in Jupyter/marimo notebooks

Utility & Meta

SkillPurpose
/look-atMultimodal file analysis (PDFs, images, diagrams, charts) via Gemini
/visual-verifyRender-vision-fix loops via Gemini vision
/skill-creatorSkill creation with superpowers enforcement patterns (wraps built-in skill-creator)
/workflow-creatorDesign structured multi-phase LLM workflows
/data-contextExtract dataset knowledge into reusable skills
/continuous-learningCross-project pattern extraction
/ai-anti-patternsDetect 12 categories of AI writing indicators
/dev-toolsDiscover available dev plugins and MCP servers
/ds-toolsDiscover available DS plugins and MCP servers
/dev-worktreeGit worktree isolation with automatic dependency setup

Agents (14)

Specialized subagents auto-discovered by Claude Code from agents/:

AgentRole
assistantPersonal productivity (email, calendar, tasks, notes, Google Workspace)
plannerImplementation planning for complex features
architectSystem design and technical decisions
tdd-guideTDD workflow enforcement
dev-implementerFeature implementation with automatic linting
ds-analystData analysis with output-first verification
code-reviewerCode quality, security, and maintainability review
security-reviewerSecurity vulnerability detection
build-error-resolverFix build/type errors with minimal diffs
e2e-runnerPlaywright E2E testing
refactor-cleanerDead code cleanup and consolidation
doc-updaterDocumentation sync and codemap updates
data-explorerEDA and data profiling
librarianKnowledge management orchestration (NLM, Readwise, Scholar)

Hooks (9)

Hooks auto-run at specific lifecycle events:

ScriptEventTriggerPurpose
session-start.pySessionStartstartup/resume/clear/compactInject using-skills meta-skill
session-end.pyStop*Update LEARNINGS.md timestamp
pre-compact.pyPreCompact*Preserve state before compaction
suggest-compact.pyPreToolUseEdit/WriteSuggest compaction when context is large
readwise-guard.pyPreToolUseReadwise MCP callsEnforce librarian delegation
image-read-guard.pyPreToolUseReadRedirect to look-at for media files
lint-check.pyPostToolUseEdit/WriteLint after file changes (ESLint, ruff, lintr)
writing-suggest-verify.pyPostToolUseEdit/WriteSuggest visual verification for writing
pr-url-logger.pyPostToolUseBashLog PR URLs and GitHub Actions status

Session Continuity

The plugin uses a PLAN.md + LEARNINGS.md system for cross-session persistence. The /continuous-learning skill extracts reusable patterns, and hooks automatically save session state.

For cross-session task persistence, set CLAUDE_CODE_TASK_LIST_ID in .envrc:

export CLAUDE_CODE_TASK_LIST_ID="my-project"

Repository Structure

workflows/
├── .claude-plugin/             # Plugin manifest
│   ├── plugin.json             # Version and metadata
│   └── marketplace.json        # Marketplace listing
├── agents/                     # Specialized subagents (14)
│   ├── planner.md, architect.md, tdd-guide.md
│   ├── dev-implementer.md, ds-analyst.md
│   ├── code-reviewer.md, security-reviewer.md
│   ├── build-error-resolver.md, e2e-runner.md
│   ├── refactor-cleaner.md, doc-updater.md
│   ├── data-explorer.md, librarian.md, assistant.md
├── skills/                     # User-facing skills (39)
│   ├── dev/, ds/, writing*/    # Core workflow entry points
│   ├── bluebook/, bluebook-audit/, docx-footnotes/  # Legal
│   ├── wrds/, lseg-data/, gemini-batch/  # Data access
│   ├── nlm/, google-scholar/, readwise*/, reading-add/  # Knowledge management
│   ├── scheduling-poll/           # Scheduling
│   ├── docx, pdf, pptx, xlsx  # Document formats (symlinks)
│   ├── marimo/, jupytext/, notebook-debug/  # Notebooks
│   └── look-at/, visual-verify/, ...  # Utilities
├── hooks/                      # Hook scripts (9)
│   ├── hooks.json              # Hook configuration
│   └── *.py                    # Hook implementations
├── lib/
│   ├── skills/                 # Internal phase skills (27)
│   └── references/             # Reference docs and templates
├── contexts/                   # Example context modes (see below)
├── rules/                      # Example rules (see below)
├── external/
│   └── anthropic-skills/       # Git submodule for document skills
├── .opencode/                  # OpenCode integration
└── PHILOSOPHY.md               # Workflow design philosophy

Key Points:

  • agents/ contains specialized subagents (auto-discovered by Claude Code)
  • skills/ contains user-facing skills (39, auto-discovered)
  • hooks/ contains hook entry points called directly by hooks.json
  • lib/skills/ contains internal phase skills (dev-implement, ds-verify, etc.)

Example Content (not auto-loaded):

The rules/ and contexts/ directories contain example content for users to copy to their own configuration. These are NOT auto-loaded by the plugin.

To use rules and contexts, copy them to your user-level config and reference in your CLAUDE.md:

# Copy to user config
cp -r rules/ ~/.claude/rules/
cp -r contexts/ ~/.claude/contexts/

Then in ~/.claude/CLAUDE.md, reference them:

## Modular Rules
Detailed guidelines are in `~/.claude/rules/`:
- security.md - Security checks, secret management
- coding-style.md - File organization, error handling
- testing.md - TDD workflow, coverage requirements

See the Claude Code documentation for CLAUDE.md best practices.

Updating External Skills

The office format skills come from Anthropic's official skills repo. To update:

git submodule update --remote external/anthropic-skills

Acknowledgments

This project was heavily inspired by obra/superpowers, particularly:

  • The SessionStart hook pattern for injecting meta-skills
  • The "using-skills" approach that teaches HOW to use skills rather than listing WHAT skills exist
  • The philosophy that skills should be invoked on-demand, not dumped into every session

Office format skills (docx, pdf, pptx, xlsx) are from anthropics/skills.

License

MIT

Author

Edwin Hu

Skills Info
Original Name:typstAuthor:edwinhu