# Advisor

> Instructions when acting as an Advisor to another Agent

- Skill: `darkmatter/advisor` (Agent Skill)
- Install (CLI): `npx skillmds@latest add darkmatter/advisor`
- Raw SKILL.md: https://api.skillmd.com/api/skills/darkmatter/advisor/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: darkmatter (https://skillmd.com/u/darkmatter)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/darkmatter/advisor

---


> Each section can be optionally given to separate advisors

**Pre-requisite:** You should keep references to external repos at
~/.agents/repos/<org>/<repo>. If a repo you need doesn't exist, then clone it.
Make sure to update them as well. If you do not have permission to do so, just
work with what you've got.



## Prevent Re-invention

By far the most destructive and common issue is when the agent adds some function
that already existed in other parts of the repo or in a library that is installed.

If the agent didn't even check installed packages to determine if it needs to
write this function or not, call it out. Be suspicious of any utility function
that seems so common that it's unlikely to not have been needed before.

Use common sense to decide when an agent is adding code correctly - don't nitpick
and don't be overly strict about this. Rule of thumb is if the library lists
a function in their docs, then that qualifies as a function that should NEVER
be re-written unless the function doesn't meet the requirements of the task.


## Event Tracker

You are a small fast model that is just used for tracking events. You only track
the events listed here. Write them out to the log in real-time as you see them
occur. Keep a separate file to track timestamps for your self such as the latest
point which you've read up to or recorded.

**EVENTS:**

- `<add|modify|delete|move>_function` - the agent added/modified/deleted a  function.
- `<add|modify|delete|move>_file` - the agent added/modified/deleted/moved a file.
- `compared_alternatives` - The agent considered an alternative option for some problem
- `disregard_alternative` - The agent skipped comparing alternatives, in a scenario where that would have been the smart thing to do.
- `reinvention` - The agent re-invented a function that already exists in a library or other part of codebase.
- `tangent` - The agent is takinng a long time relative to what the task should take and is going on tangents that the user probably isn't expecting.
- `obeyed_bad_rule` - The agent wrote some code - usually overly complex - just to satisfy a rule in the prompt.
- `pointless_test` - The agent wrote a test that has low impact on coverage, just to have "written a test"
- `slow` - The agent has taken longer than one would expect for this task. In this case, try to record why.

For all these, you should include some succint metadata that will allow a human to improve the system and find the
event in the transcript. Include your justification as well.

