Chalk Labs
Need help deploying til-lint?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/songyunseop-til-lint
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: security, productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/til-lint
What's inside
- Skill name
til-lint- Description
- Health-check the TIL wiki for structural issues. Use when the user says 'lint', 'check my TILs', 'wiki health', 'find broken links', 'orphan notes', or wants a periodic quality audit of their TIL collection.
- License
- MIT
- Instructions
- 167 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
> **TIL_PATH**: All `${TIL_PATH}/...` references below resolve to the vault's configured TIL path (injected at SessionStart). Bash expands `${TIL_PATH}` automatically. For `Read`/`Edit`/`Glob`/`Write` tools, substitute the resolved value before passing it as an argument (e.g. `${TIL_PATH}/SCHEMA.md` → `40-Resources/til/SCHEMA.md`). Default `til` when not injected; call MCP `til_get_path` if you need the current value.
# TIL Lint Skill
Scan the TIL collection for structural issues and suggest fixes. Diagnose, don't auto-fix.
## Modes
- **Default (full)**: All 7 checks; vault-wide scan; diagnose-only (read-only).
- **Fast** (`--fast` flag, used by `/save` auto-lint loop): low-latency subset for a single file or category.
- **Included**: Check 1 (Frontmatter Validation), Check 2 (Orphan TILs and MOC Coverage), and `${TIL_PATH}/SCHEMA.md` rule violations
- **Excluded**: Check 3 (Broken/Unresolved Links — heavy `til_get_context` traversal), Check 4 (Backlog Consistency — vault-wide compare), Check 5 (SRS Coverage), Check 6 (Stale Content), Check 7 (Raw Source Coverage)
- **Scope**: limited to the file or category argument; no full vault scan
- **Output**: structured `## Violations` block (see Step 3) for downstream parsing
## MCP Tools
- `til_list`: Full TIL inventory (category grouping, search)
- `til_get_context`: Link relationships, unresolved mentions for a topic
- `til_backlog_status`: Backlog progress per category (with sections when filtered)
- `til_recent_context`: Recent activity (mtime-based)
- `til_review_list`: SRS review stats (total tracked, due today)
- `til_backlog_check`: Mark backlog item as completed (used in fix actions)
- `til_review_update`: Record review result or register for SRS (used in fix actions)
## Step 1: Collect Inventory
1. **Read `${TIL_PATH}/SCHEMA.md`** for current conventions. If missing, use built-in defaults and emit a warning in the report ("`${TIL_PATH}/SCHEMA.md` not found — using built-in defaults. Run `/omt-setup` to seed.").
2. Call `til_list` (no filters) to get all TILs and categories
3. Call `til_backlog_status` to get all backlog progress
4. Call `til_review_list` (`include_content: false`) to get SRS stats
5. Use `Glob` with pattern `raw/**/*.md` to list all raw source files
6. Use `Glob` with pattern `${TIL_PATH}/**/MOC.md` to list category MOC files
7. If category argument provided, repeat above calls with category filter
## Step 2: Run Checks
Perform all checks below. For each issue found, record category, file path, and issue type.
### Check 1: Frontmatter Validation
Validate each TIL file against `${TIL_PATH}/SCHEMA.md` rules (with built-in fallback when SCHEMA.md is missing):
- Required fields present: `title`, `date`, `category`, `tags`, `aliases`
- `tags` array includes `"til"`
- `date` is valid ISO format (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SS)
- Optional `related` field, if present, must be a string array of `${TIL_PATH}/{category}/{slug}.md` paths
### Check 2: Orphan TILs and MOC Coverage
For each TIL, call `til_get_context` with the filename slug as topic.
A TIL is **orphan** when: `matchedFiles` backlinks count = 0 AND the TIL is not listed in any MOC (root or category).
**Root MOC** (`${TIL_PATH}/TIL MOC.md`):
- TILs not listed in MOC (warning)
- MOC entries pointing to non-existent files (error)
**Category MOC** (`${TIL_PATH}/{category}/MOC.md`, only checked when present):
- TILs in that category not listed in the category MOC (warning)
- Category MOC entries pointing to non-existent files (error)
- Both root and category MOC count toward "is this TIL referenced by any MOC?" — orphan only when neither references it
### Check 3: Broken and Unresolved Links
From `til_get_context` results, collect:
- `unresolvedMentions`: links pointing to files that don't exist
- Group by source file for the report
### Check 4: Backlog Consistency
Compare `til_backlog_status` sections with `til_list`:
- Backlog item marked `[x]` but no corresponding TIL file exists
- TIL file exists but backlog item still marked `[ ]`
### Check 5: SRS Coverage
Compare total TIL count (`til_list`) with SRS tracked count (`til_review_list` stats).
- Flag TILs not registered for spaced repetition review
- Report coverage percentage
### Check 6: Stale Content
Call `til_recent_context` with `days: 180`.
- TILs NOT in the recent list = older than 6 months without modification
- Prioritize categories with fast-changing topics (framework, tool, library)
### Check 7: Raw Source Coverage
Scan all TIL files for `## References` sections containing `raw/` paths.
Compare with the full raw file inventory from Step 1.
- **Unprocessed raw**: Files in `raw/` not referenced by any TIL's References section
- **Broken raw reference**: TIL References contains a `raw/` path but the file doesn't exist
## Step 3: Generate Report
### Default (full) format
Present findings grouped by severity:
```
## TIL Lint Report
### Errors (must fix)
- Broken links (N)
- Missing required frontmatter (N)
- Backlog mismatches (N)
- Broken raw references (N)
### Warnings (should fix)
- Orphan TILs — no inbound links (N)
- Not in MOC (N)
- Not registered for SRS (N)
### Info
- Stale TILs — 6+ months without update (N)
- SRS coverage: X%
- Unprocessed raw sources (N)
- Raw sources total: N files
- Total: N TILs across M categoriesFrom SongYunSeop/oh-my-til, MIT.
More from SongYunSeop/oh-my-til
- 0.502score
save
SongYunSeop
Save learning content as a TIL file and update MOC and backlog.
SkillCFreshness: C★ 1Claude Code +9 - 0.502score
research
SongYunSeop
Research a topic to identify key concepts and terms, then organize as a learning backlog.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
backlog
SongYunSeop
View learning backlog and show progress.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
dashboard
SongYunSeop
Learning dashboard — stats, activity heatmap, categories, backlog progress.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
til
SongYunSeop
Today I Learned — research a topic, learn interactively, then save as TIL markdown.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
til-review
SongYunSeop
SRS-based TIL review session (spaced repetition).
SkillCFreshness: C★ 1Claude Code +9 - 0.491score
omt-setup
SongYunSeop
oh-my-til unified setup — seeds SCHEMA.md and configures deployment
SkillCFreshness: C★ 1Claude Code +9 - 0.488score
setup-obsidian
SongYunSeop
Install or update the Oh My TIL plugin in an Obsidian vault
SkillCFreshness: C★ 1Claude Code +9 - 0.487score
release
SongYunSeop
Create a new release.
SkillCFreshness: C★ 1Claude Code +9 - 0.484score
update-plugin
SongYunSeop
Update the installed Oh My TIL plugin to the latest version
SkillCFreshness: C★ 1Claude Code +9 - 0.484score
install-plugin
SongYunSeop
Install the Oh My TIL plugin into an Obsidian vault
SkillCFreshness: C★ 1Claude Code +9 - 0.483score
dev
SongYunSeop
Create a feature branch + worktree, do the work, then automatically merge back to the current branch
SkillCFreshness: C★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- May 14, 2026 (5 months ago)
- Last release
- May 15, 2026 (5 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/SongYunSeop/oh-my-til
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from SongYunSeop
- 0.502score
save
SongYunSeop
Save learning content as a TIL file and update MOC and backlog.
SkillCFreshness: C★ 1Claude Code +9 - 0.502score
research
SongYunSeop
Research a topic to identify key concepts and terms, then organize as a learning backlog.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
backlog
SongYunSeop
View learning backlog and show progress.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
dashboard
SongYunSeop
Learning dashboard — stats, activity heatmap, categories, backlog progress.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
til
SongYunSeop
Today I Learned — research a topic, learn interactively, then save as TIL markdown.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
til-review
SongYunSeop
SRS-based TIL review session (spaced repetition).
SkillCFreshness: C★ 1Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get til-lint running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
til-lint skill. Agent Mart. https://agentmart.dev/skills/songyunseop-til-lint (last updated 2026-10-24)