One-time onboarding for the financial trader workflow — real-time alerts, position-aware relevance, decision journaling with outcome tracking. After successful setup this skill is excluded from selection until the marker file is deleted.
You are configuring the commitments system for a financial trader. Their day involves:
This bundle relies on these skills activating during conversation (keyword-triggered):
| Skill | Activates when | What it does |
|---|---|---|
commitment-triage | User mentions obligations, deadlines | Extracts signals, creates/resolves commitments |
commitment-digest | User asks "show commitments" | Composes formatted summary |
decision-capture |
| User makes a trade decision ("sold half my AAPL") |
| Records decision with rationale for journaling |
delegation-tracker | User delegates research tasks | Tracks delegation follow-ups |
If any are missing from skills/, tell the user which ones are needed.
commitments/README.md exists via memory_read. If it does, skip to creating trader-specific files.commitments/README.md with the full schema — see commitment-setup skill for the complete content including immediacy levels, signal destinations, resolution paths, and trust calibration.open/, resolved/, signals/pending/, signals/expired/, decisions/, parked-ideas/.memory_write(target="commitments/positions.md", content="# Current Positions\n\nMaintain your positions here. The agent reads this to score signal relevance.\n\n## Format\n\n- TICKER: SIZE, entry PRICE, thesis: BRIEF_THESIS\n\nExample:\n- AAPL: 500 shares, entry $175, thesis: AI integration undervalued\n- SPY Apr 520P: 10 contracts, thesis: hedging macro risk\n\n## Positions\n\n(Add your positions here)", append=false)
memory_write(target="commitments/trade-journal/README.md", content="Daily trade journal entries. Each file: commitments/decisions/<date>-<slug>.md with outcome tracking.", append=false)
mission_create(
name: "commitment-triage",
goal: "Trader triage. Read commitments/README.md for schema. Read commitments/positions.md for current positions. Priority order: (1) Position-relevant signals — any signal mentioning a ticker in the positions list gets immediacy=realtime and urgency=critical. Broadcast immediately via message tool. (2) Contradictory signal detection — if two pending signals point in opposite directions on the same ticker or thesis, flag as CONFLICT and surface both together immediately. (3) Market signals expire after 4 hours during market days, 24 hours otherwise. Research/thesis signals expire after 48 hours. (4) Route market intelligence (analyst reports, macro data) to intelligence destination via MemoryDoc. (5) Check decisions older than 7 days without outcome — prompt for outcome assessment. (6) Append triage summary to commitments/triage-log.md. (7) Alert on any position-relevant or conflicting signals.",
cadence: "0 8,10,12,14,16,18 * * 1-5"
)
Six runs on market days — every 2 hours from pre-market to post-market close.
mission_create(
name: "commitment-digest",
goal: "Trader digest. Read commitments/README.md for schema. Read commitments/positions.md for current positions. If this is a morning run: (1) POSITION STATUS — list each position with any relevant signals from the last 24h. (2) OPEN RESEARCH — commitments tagged 'research' or 'thesis'. (3) PENDING DECISIONS — items with resolution_path=needs_decision. (4) CONFLICTING SIGNALS — any unresolved conflicts. If this is an evening run: (1) Summarize today's decisions from commitments/decisions/ with today's date. (2) For each decision, note if outcome data is available. (3) Prompt: 'Any trades to journal? Any thesis updates?' End with 'Did I miss anything?' Send via message tool.",
cadence: "0 7,18 * * 1-5"
)
mission_create(
name: "trader-weekly-review",
goal: "Weekly trading review. Read all files in commitments/decisions/ from the past 7 days. For each decision: (1) What was decided and why. (2) If outcome data exists, was it positive or negative? (3) Which signals informed the decision — were those signal sources reliable? Also read commitments/positions.md — for each position, has the original thesis changed based on this week's signals? Flag any position where contradictory evidence has accumulated. Write review summary to context/intel/weekly-review-<date>.md as durable intelligence. Send via message tool.",
cadence: "0 10 * * 6"
)
memory_write(
target: "commitments/calibration.md",
content: "# Trader Calibration\n\n- Always read commitments/positions.md before scoring signal relevance — a headline about AAPL is noise unless you hold AAPL\n- Position-relevant signals get immediacy=realtime — broadcast immediately, do not wait for digest\n- Market signals expire after 4 hours on trading days; research signals after 48 hours\n- When two signals contradict on the same ticker or thesis, flag as CONFLICT — never surface them independently\n- Trade decisions go in commitments/decisions/ with the standard schema, plus outcome tracking\n- Prompt for outcome assessment on decisions older than 7 days: 'You decided X a week ago. How did it play out?'\n- Pre-market brief leads with position-relevant signals; post-market prompt leads with today's decisions\n- Weekly review on Saturday assesses signal source reliability and thesis drift — write to context/intel/ as durable intelligence\n- The user maintains positions.md manually — do not modify it, only read it\n- Start conservative: surface everything, ask before acting on agent_can_handle items",
append: false
)
Your trading commitment system is ready:
- Triage runs every 2 hours on market days (8am–6pm) — position-aware, contradictory signal detection, 4h market signal expiration, realtime alerts for position-relevant signals
- Pre-market brief at 7am — position-relevant signals, open research, pending decisions
- Post-market journal at 6pm — today's decisions, outcome prompts
- Weekly review Saturday 10am — decision outcomes, signal reliability, thesis drift
- Update
commitments/positions.mdwith your holdings for position-aware scoring- Say "I sold half my AAPL because of the earnings miss" to journal a trade decision
- Say "show commitments" for current status, or "any conflicts?" for contradictory signals
After confirming with the user, write the setup completion marker so this skill stops competing for the activation budget on every subsequent message:
memory_write(
target: "commitments/.trader-setup-complete",
content: "# Trader Setup Complete\n\nCompleted: <today's UTC date>\n\nMissions installed: trader-triage, trader-pre-market, trader-post-market, trader-weekly-review"
)
To re-trigger setup, delete commitments/.trader-setup-complete first.