Turn your agent into a mentor. It knows what you're working toward, and how you get in your own way.
> /plugin marketplace add hcsum/dont-let-me> /plugin install mentor@dont-let-me
What's inside
English · 简体中文
Turn your agent into a mentor. It knows what you're working toward, and how you get in your own way.
Tell your agent:
install this plugin: https://github.com/hcsum/dont-let-me
or follow:
claude plugin marketplace add hcsum/dont-let-me
claude plugin install mentor@dont-let-me
Then run /mentor:init to set up your profile, and /mentor:check any time you
want the alignment check on demand.
codex plugin marketplace add hcsum/dont-let-me --ref main
codex plugin add mentor@dont-let-me
Then run $mentor-init to set up your profile, and $mentor-check any time you
want the alignment check on demand.
Codex makes you trust a hook before it runs: open /hooks, review the
SessionStart entry, trust it. Until you do, the profile never loads.
OpenCode has no plugin marketplace for this, so clone it and point the config at the pieces OpenCode knows how to load.
git clone https://github.com/hcsum/dont-let-me.git ~/.mentor/plugin
Load the mentor stance and skills:
// ~/.config/opencode/opencode.json
{
"$schema": "https://opencode.ai/config.json",
"instructions": ["~/.mentor/plugin/stance.md", "~/.mentor/profile.md"],
"skills": { "paths": ["~/.mentor/plugin/skills"] }
}
OpenCode does not load commands from arbitrary external directories, so install the two command entry points into OpenCode's global command directory:
mkdir -p ~/.config/opencode/commands
cat > ~/.config/opencode/commands/mentor-init.md <<'EOF'
---
description: Set up your mentor profile — goals, reality, and your own don't-let-me list
---
Use the `mentor-init` skill and follow it exactly.
$ARGUMENTS
EOF
cat > ~/.config/opencode/commands/mentor-check.md <<'EOF'
---
description: Hold what you've actually been doing up against your goals and your don't-let-me list
---
Use the `mentor-check` skill and follow it exactly.
If the user passed anything below, treat it as their own account of what they've been working on.
$ARGUMENTS
EOF
Then restart OpenCode. Run /mentor-init to set up your profile, and
/mentor-check any time you want the alignment check on demand.
In my own use, Claude Code is where this works best. Codex and OpenCode both run it, but how well the nudges land depends on the model behind them, and I've had better results with Claude.
Setup asks you two or three questions. Run /mentor:init
in Claude Code, $mentor-init in Codex, /mentor-init in OpenCode. Two things
come out of it.
Your long-term goals. What you're actually working toward. It pushes back if you answer vaguely.
Your anti-patterns. The ways you reliably get in your own way, written down while you're still honest about them, so it can hold you to them later when you're not:
- [ship] don't let me build in private forever, waiting for it to be ready
- [explore] don't let me keep opening new threads while nothing is finished
You do this once and rarely touch it again.
mentor, what's on my plate today?
Ask what's on your plate and it won't read you the whole todo list. It picks the few that serve your main goals and names the first move on one, small enough to start now.
add "ship the landing page" to my todos
Prompts without the keyword 'todo' or 'mentor' will also trigger the mentor stance. You can brain dump what's in your mind.
I want to redo the pricing page, learn Rust, call the accountant, fix the signup bug, and write that post I keep putting off
Mention something in passing and it's kept. It then files each item against your goals, gives it a priority, and merges it with the other things you started that turned out to be the same thing. Items that serve none of your goals get said out loud and put low.
It loads into every session and reads along while you do unrelated work. When what you're doing is on your own don't-let-me list, it says so, once per pattern. You can wave it off.
It also watches what's not moving. Items that keep carrying over day after day get treated as avoidance, not as a scheduling problem.
One section of the profile it writes itself. When the same thing happens a second
or third time and nothing you wrote saw it coming, it adds a line under
## Observed patterns — what the pattern is, and what it will watch for next
time. You don't maintain that section, and you can delete anything you disagree
with. It won't move an entry up into your don't-let-me list on its own; that list
stays your own writing about yourself, which is where its authority comes from.
Ask for the alignment check any time instead of waiting to be noticed:
/mentor:check, $mentor-check, or just asking for one.
Probably most useful if you have ADHD tendencies, or something near them. You fall into rabbit holes and can't climb out, you start five things and finish none. That's what I built it around.
It works best if the agent is already where your work starts (research, writing, coding, planning a video), because then it sees what you actually did, not just what you told it. If it isn't, it still works. It just runs on what you tell it.
~/.mentor/profile.md your goals, your reality, your don't-let-me list, plus
what it has noticed on its own
~/.mentor/todos.md the todo surface
Plain markdown on your machine. Nothing is sent anywhere, and nothing is written
to your CLAUDE.md or AGENTS.md. Uninstalling leaves no trace but those two
files. Set MENTOR_HOME to relocate the pair. Otherwise the first existing
directory wins (~/.mentor/, then ~/.claude/mentor/, then ~/.codex/mentor/),
so every agent resolves to the same profile. If more than one exists, the earlier
one wins and the others are ignored; set MENTOR_HOME if that's not what you
want.
I'm also building the same idea as a standalone web app: One Thing at a Time.
MIT
FAQ
mentor is a Claude Code plugin with 3 hand-picked skills for productivity work, indexed on Flowy. Install it with the command on its page. It includes mentor-check, mentor-init, todos. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.
Is this plugin yours?
Claim it with GitHubSubmit a pluginPromote it