Clone this repository
For self-hosted knots, clone URLs may differ based on your setup.
- Extract shared island utilities (islandId, findComponents, etc.) into island-shared.ts
- All island:* commands now use 12-char lexmin hash as canonical island ID
- Regenerate lexicons/generated/ with org.latha.island namespace
- Fix island:analyze execFileSync import and null guards
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
- Frontend: /island/<12-hex-hash> replaces /strata?id=X, with legacy redirect
- Worker: SPA fallback includes /island/*, computes islandHash from lexmin
- island:analyze: fix execFileSync import (node:child_process), guard null takeaway/domain
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
Same component always gets the same rkey, so re-publishing updates
the existing record instead of creating duplicates.
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
- Extract shared carry query, URL normalization, and component logic into island-shared.ts
- island:detect: simplified, uses shared utils
- island:discover: improved component reporting
- island:explore: enhanced carry-backed scoring
- Add island:publish stub
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
Runs carry-backed analysis on connected components found by island:discover:
- Matches carry connections against island URLs to find bridge edges
- Extracts themes from island text corpus
- Flags hot edges connected to carry touchpoints
- Finds tensions from carry citations
- Generates synthesis and open questions
- Writes results to SQLite (not PDS — use island:publish for that)
Usage: bun island:analyze 1 | bun island:analyze --all
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>