一键导入
edit
Edit account, goal, plan, profile, recurring, income, holding, or attestation values via guided forms. Supports undo. Auto-clears _estimated flags on confirm.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Edit account, goal, plan, profile, recurring, income, holding, or attestation values via guided forms. Supports undo. Auto-clears _estimated flags on confirm.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Решава дали потребителят може да си позволи покупка/разход/разсрочване. Auto-triggered by natural language — use whenever the user asks "can I afford X", "should I buy Y", "how should I finance Z", "can I afford this", "трябва ли да купя", "мога ли да си позволя", "should I take this loan", "is this a good purchase". Recommends payment method (card/account/installments/liquidation) and explains impact on every active goal.
Управление на финансови цели — създаване, редакция, преглед, приключване (achieve/abandon). Използва се за CRUD върху goals/. Goals are the spine — every other skill references them.
Периодичен преглед — месечен/тримесечен/годишен доклад. Use at period close or whenever the user asks for a financial report ("monthly review", "how did Q1 go", "year in review", "месечен отчет"). Goal progress is the top section; transactions come second.
Анализ на финансовото състояние спрямо целите — тенденции в харчене, нетна стойност, разпределение, паричен поток. Triggered by "how am I doing", "where do I spend the most", "what's my allocation", "как се справям", "къде харча най-много", "каква е алокацията ми".
Главно меню на coinskills — статус спрямо целите, налични инструменти. Използва се при стартиране на нова сесия с coinskills.
Бързо вписване на транзакция, доход или промяна в баланс. Used ad-hoc — "платих 42 в Lidl", "received 3200 salary", "credit card balance is now -340". Parses free-form Bulgarian/English input, identifies account/category/amount, appends to monthly ledger, updates accounts.json balance.
| name | edit |
| description | Edit account, goal, plan, profile, recurring, income, holding, or attestation values via guided forms. Supports undo. Auto-clears _estimated flags on confirm. |
User wants to correct a value, confirm an estimated field, set an attestation date, or undo a recent change. Triggered explicitly via slash command:
/coinskills:edit account <id>/coinskills:edit goal <id>/coinskills:edit plan <goal-id>/coinskills:edit profile/coinskills:edit recurring <id>/coinskills:edit income <id>/coinskills:edit holding <ticker>/coinskills:edit attestation <goal-id> "<prereq-label>"/coinskills:edit undo (last change) or /coinskills:edit undo <event-id>Apply skills/_shared/path-guard.md. Read profile.md frontmatter; if schema_version != 2, abort: "v0.2 features require migration. Run /coinskills:migrate first."
Parse the user's argument string. Dispatch:
| Subcommand | File | Schema |
|---|---|---|
account <id> | accounts.json (single entry by id) | account.schema.json |
goal <id> | goals/<id>.md (frontmatter) | goal.schema.json |
plan <goal-id> | active plan in plans/ matching goal-id | plan.schema.json |
profile | profile.md (frontmatter) | profile.schema.json |
recurring <id> | entry in modules/personal/recurring.json | recurring.schema.json |
income <id> | entry in modules/personal/income.json | income.schema.json |
holding <ticker> | entry in modules/investments/holdings.json | holding.schema.json |
attestation <goal-id> <label> | nested prereq inside goals/<goal-id>.md frontmatter | goal.schema.json |
undo | last entry in changes.jsonl | change-event.schema.json |
undo <event-id> | specific entry | change-event.schema.json |
If the target doesn't exist (account id, goal id, ticker not found), respond: " not found. Did you mean: <closest 3 matches>?" then exit.
Print the current entry as a numbered table:
Editing account 'card-unicredit-bulbank':
1. id card-unicredit-bulbank (immutable)
2. type credit_card
3. name UniCredit Bulbank
4. currency EUR
5. limit 10000
6. balance -2000
7. apr 0.199 ⚠ estimated
8. billing_cycle_day 15 ⚠ estimated
9. rewards (none)
10. module personal
Prompt: "Pick a field number to edit, type 'confirm ' to clear the ⚠ estimated flag without changing the value, or type 'cancel' to exit."
On field selection:
_estimated, ask explicitly: "This field is currently flagged as estimated. Are you (a) confirming the existing value as accurate, or (b) entering a corrected value?" Two paths:
op: confirm. Remove field from _estimated array.op: update. Remove field from _estimated array._estimated, prompt for new value. Proceed with op: update.Validate the proposed change:
skills/_shared/mutation-pipeline.md step 2.- apr: 0.199 (estimated)
+ apr: 0.185 (confirmed)
On yes → run mutation pipeline steps 3-5 (append to changes.jsonl, atomic write, mark snapshot stale). Print:
✅ Applied. Event id: chg_2026-04-28T11:02:14Z_b7c
To undo: /coinskills:edit undo chg_2026-04-28T11:02:14Z_b7c
On no → exit without writing anything.
/coinskills:edit attestation <goal-id> "<prereq-label>" is a fast-path that:
goals/<goal-id>.md frontmatter.type == "attestation" AND label == "<prereq-label>" (case-insensitive). If not found, list available attestation labels and exit.confirmed_at: <today>. Run mutation pipeline. op: confirm./coinskills:edit undochanges.jsonl.op == "undo" already → ask the user: "Last change was already an undo. Undo the undo? (yes / no)". On yes, treat its reverses field as the event to redo. On no, exit./coinskills:edit undo <event-id>Find the event with matching id in changes.jsonl.
Conflict detection: scan all later events for any whose target overlaps the original event's target (same file + same JSON path or a prefix match). If any exist, print:
⚠ This change has been overwritten by later edits. Reverting it would also revert:
- chg_<id> on <target> (<op>, <timestamp>)
Proceed anyway? (yes / no / cancel)
On yes → continue. On no/cancel → exit.
Construct the reverse mutation: write before back as the new state.
Validate against the schema (the before state must still be valid in v0.2 — if not, error: "Cannot undo: pre-change state is invalid under current schema.").
Append a new event:
{"id":"chg_<now>_<hex>","timestamp":"<now>","skill":"edit","op":"undo","target":"<original target>","before":<original after>,"after":<original before>,"validation":"ok","reverses":"<original event id>"}
Atomic-write the reverted state. Mark snapshot stale.
Print:
✅ Reverted chg_<original id>. Event id: chg_<new id>
To redo: /coinskills:edit undo chg_<new id>
After any successful edit/confirm/undo, ask: "Commit this change to git? (yes / no — defaults to no)". On yes:
git -C <workspace> add changes.jsonl <touched-file> snapshots/latest.json
git -C <workspace> commit -m "edit: <op> <target>"
stale: true after the write.<workspace>.