friclog
v0.1.0
Published
Seamless CLI for capturing daily frictions, ideas, problems, and wins — with weekly review and Obsidian support
Maintainers
Readme
friclog
A minimal CLI for capturing daily frictions, ideas, problems, and wins — then reviewing them weekly to continuously improve your workflow.
Built for developers who live in the terminal. Notes are plain markdown, compatible with Obsidian out of the box.
Install
npm install -g friclog
fric initThe idea
Small frictions compound. A deploy with one too many steps, a CI pipeline that's too slow, a process that creates confusion — individually forgettable, collectively significant. fric gives you a one-second way to capture them as they happen, and a weekly review to turn the patterns into action.
The methodology combines:
- Friction Logging (Stripe) — stream-of-consciousness capture with category and severity
- GTD capture phase — zero friction at capture time, no processing required
- Sprint retro structure — weekly review produces concrete Start/Stop/Continue actions
Quick start
# Log a friction
fric f "CI takes 12 minutes on every PR"
# Tag with a category using #hashtag
fric f "CI takes 12 minutes #tooling"
# Both shorthand and full words work
fric friction "deploy has too many manual steps"
fric i "could cache node_modules in CI #tooling"
fric idea "write a one-command deploy script #process"
fric p "auth tokens expiring unexpectedly"
fric w "refactored auth module, tests all green"
# No args opens your $EDITOR
fricCommands
Capture
| Command | Type | Description |
|---|---|---|
| fric f "text" / fric friction "text" | friction | Something that slowed you down |
| fric i "text" / fric idea "text" | idea | A potential fix or improvement |
| fric p "text" / fric problem "text" | problem | An unsolved blocker |
| fric w "text" / fric win "text" | win | Something that went well |
| fric "text" | friction | Bare capture defaults to friction |
| fric | friction | Opens $EDITOR with a template |
Add #category anywhere in the text to tag it: #tooling, #process, #cognitive, #communication, #environment. Any other #tags are stored as freeform tags.
Review
fric list # today's entries
fric list --week # this week
fric list -t friction # filter by type
fric review # weekly review (current week)
fric review --last-week # previous week
fric review --open # generate + open in ObsidianSearch
fric search "CI" # regex search across all entries
fric search "tooling" # matches body text, type, category, and tagsSetup
fric init # create vault at ~/friclog
fric init --completion # also install shell auto-complete
fric config # show current config
fric completion # print completion script (bash/zsh)Shell auto-complete
# Install (detects your shell automatically)
fric init --completion
source ~/.zshrc # or ~/.bashrc
# Then tab-complete subcommands and flags
fric <TAB>
fric list --<TAB>Obsidian
Your vault lives at ~/friclog/. Open it in Obsidian as a vault.
~/friclog/
entries/ ← one .md file per entry, YAML frontmatter
reviews/ ← weekly review reportsEach entry has structured frontmatter (date, type, category, severity, tags) queryable with the Dataview plugin:
TABLE type, category, severity, file.mtime AS "Updated"
FROM "entries"
WHERE type = "friction"
SORT date DESCWeekly reviews are formatted with Obsidian callouts and [[wiki-links]] back to source entries:
> [!danger] CI takes 12 minutes
> `tooling` · `medium` · [[entries/2026-04-18-0915-friction|↗]]The review also includes a Reflection section and Start · Stop · Continue table ready to fill in, plus interactive task checkboxes for action items.
Open reviews from the terminal
fric review --open # generates review and jumps to it in ObsidianEntry format
---
date: 2026-04-18T09:15:32.000Z
type: friction
category: tooling
severity: medium
tags: []
---
CI pipeline takes 12 minutes on every PR. The TypeScript
incremental build doesn't seem to be caching correctly.Weekly review format
---
week: 2026-W16
generated: 2026-04-18
entries: 9
tags: [weekly-review]
---
# Weekly Review — Week 16, 2026
> [!abstract] At a Glance · Apr 14–Apr 18, 2026
> friction: **4** · idea: **3** · problem: **1** · win: **1**
> Top categories: tooling (3) · process (3) · general (2)
## Frictions
> [!danger] CI takes 12 minutes on every PR
> `tooling` · `medium` · [[entries/2026-04-18-0915-friction|↗]]
...
## Reflection
> [!question] What patterns do I notice this week?
> [!question] What is the single most important thing to fix or pursue?
### Start · Stop · Continue
- **Start:**
- **Stop:**
- **Continue:**
## Action Items
- [ ]License
MIT
