Skip to content

Vault-native Ecco notepads: a Markdown outline with inline fields, plus two views (filtered+nested list, sortable table). Built alongside Ecco Pro — nothing is migrated out of it. ecco-notepads-build task: Focus/Tasks/ecco-notepads-build.md.

Status as of 2026-08-20: Phase 0-3 done (CLI self-verification, shared engine, Today.md live trial, entry template). Phase 4 (remaining notepads) is deliberately not started — gated on Phase 2 surviving a week of real use. Phase 5 (this note) written early since it doesn’t depend on that trial.

Ecco’s real column set, reproduced as inline fields on each list item:

FieldMeaningExample values
abcPriorityA, B, C
statusStatetodo, WIP, waiting, recurring, done
actionNext physical action (optional)call, ask, buy, decide
focusTime horizontoday, thisWeek, someday

Written directly on the bullet: - Item text [abc:: A] [status:: WIP] [focus:: today].

  1. Place the cursor at the end of a line in a notepad’s ## Outline.
  2. Run Templater: Insert Ecco Item (hotkey bound and confirmed working, or Command Palette). It prompts for ABC / Status / Action / Focus, then writes the fielded bullet with the cursor left where the item’s text goes.
  3. Type the item text.
  1. Create a Markdown file anywhere under Focus/ with an ## Outline heading and your items below it.
  2. Add a filtered+nested view:
    dv.view("Focus/scripts/ecco-view", {
    field: "focus", value: "today",
    source: '"path/to/your/notepad"'
    });
  3. Add a table view (columns, no engine needed — plain Dataview):
    TABLE WITHOUT ID regexreplace(item.text, "\s*\[\w+::[^\]]*\]", "") AS "Item", item.abc AS "ABC", item.status AS "Status", item.action AS "Action", item.focus AS "Focus"
    FROM "path/to/your/notepad"
    FLATTEN file.lists AS item
    WHERE item.abc
    SORT item.abc ASC

Today.md is a working example of both.

  • No single always-visible window — each notepad is a file you open, not a persistent pane.
  • No drag-and-drop reordering of items between notepads/status columns — editing is text.
  • No any-device sync — out of scope by Talbot’s decision (unmade).
  • Entry is still slower than Ecco’s native UI even with the template (prompts vs. instant columns) — the honest gap named in Phase 3. Not yet measured against a week of real typing.
  • Only one level of “ancestor context” is proven at scale; deeper edge cases weren’t hammered beyond the 4-level proof outline.

Nothing here touches Ecco. To remove:

  1. Delete Focus/scripts/ecco-view.js and ecco-view.test.mjs.
  2. Delete any notepad files built this way (Today.md, plus whatever Phase 4 adds later).
  3. Delete Core/Processes/Projects/KB-OS/Templates/Ecco Item.md and remove it from Templater’s Settings → enabled-hotkey-templates list if bound.
  4. Delete this file and Core/IT/Utils/Custom/ecco-view.md / obsidian-cli.md. No plugins were added (Dataview, Templater, cmdr were already installed) — nothing to uninstall.

Known gaps (honest, per the task’s success criteria)

Section titled “Known gaps (honest, per the task’s success criteria)”
  • Today.md’s current outline is seeded from Core/DASHBOARD.md’s Biggest Rocks + Core/_WorkingOn/Tasks/_active.md — real, sourced current work, but not Talbot’s actual Ecco Today content (unreachable from here). The one-week kill-criterion trial starts from this seed.
  • Phase 4 (remaining 12 notepads) not started — correctly gated on the trial above.