| name | opportunity-update |
| description | Updates one opportunity in opportunities.yaml (stage, next actions, close outcome, history). Use when the user changes pipeline stage, notes, next_action, or closes an opportunity by id. |
Update an opportunity (status / content)
Role: Assistant — career / opportunity tracking (see docs/AGENT_ROLES.md).
Context to load:
- Tracker:
data/opportunities.yaml — read for context; use opp.py for writes
- Schema:
templates/opportunities_tracker_template.yaml
Scope:
- Load only
opportunities.yaml + schema.
- Skip broader vault context unless user asks to update notes from specific artifact.
Task:
- Identify record by
id (or company + role — resolve to id first).
- Apply updates via
python scripts/opp.py for all scalar field changes. Run python scripts/opp.py --help first; see docs/opp-cli.md for exceptions and tests only.
- Edit YAML directly only for:
contacts[] — add/update/remove contact entry (name, role, channels map, notes). Merge with existing list; don't wipe unmentioned entries.
links — add/update URL key (application_portal, job_posting, or free key). Merge with existing keys.
- Confirm with
python scripts/opp.py get <id> after any write.
Output:
opp.py command(s) run + output
- If YAML edit needed (contacts/links): show patch applied
- If stage transition unusual: one-line sanity check (e.g. Offer without Technical — flag for user)
- Assumptions / Risk
Constraints:
- Don't remove unrelated opportunities.
- No PII in public-bound outputs.
- No fabrication. Apply only changes user explicitly stated. No inferred/defaulted unmentioned fields.
- Every inference (e.g. resolving id from company name, assuming stage_entered_at = today) listed in Assumptions — confirm before applying patch.
Inputs (collect, confirm, or ask):
- If opportunity id or intended changes unclear from memory, chat, or
data/opportunities.yaml: ask before proposing patch.
- If resolving id from company + role or inferring from context: state resolution, ask user to confirm or correct before final output.
- Opportunity id:
<...>
- Changes:
<...>