Phase 1: Command palette (⌘K), editor autosave with quiet auto-saves, dashboard saved views from API + quick links + onboarding seed CTA, explicit task scan panel. Phase 2: Context pack formatter with YAML frontmatter, copy on note + workspace .md export. Phase 3: ADR for hybrid search without embeddings; POST /notes/search (lexical + ranked hybrid); search UI mode toggle. Phase 4: POST copilot + suggest-title; in-editor copilot actions; /chat retrieval answers with citations (backend chat.rag_enabled). Phase 5: Settings MCP snippet, offline queue note, API token deferral; DEEP_LINKS.md. Phase 6: Note shares + public GET; share page; POST onboarding-seed. Phase 7: note_versions on PATCH; version panel; create-note templates; PWA manifest. Flags: search.hybrid_enabled, copilot.enabled, chat.rag_enabled, onboarding.seed_enabled. Made-with: Cursor
1016 B
1016 B
NoteLett — Deep links for agents and humans
Product id: notelett (see shared/product.json).
Web URLs
| Purpose | Pattern | Example |
|---|---|---|
| Note (authenticated) | {origin}/notes/{noteId} |
https://app.example.com/notes/abc-123 |
| Search with query | {origin}/search?q={query} |
https://app.example.com/search?q=draft |
| Reviews | {origin}/reviews |
|
| Workspace chat | {origin}/chat |
|
| Read-only share | {origin}/share/{shareToken} |
After Copy share link on a note |
Set NEXT_PUBLIC_WEB_APP_ORIGIN in production so copied share links use the public hostname when SSR runs.
Custom URL scheme (optional)
For desktop or mobile handlers you can register notelett://note/{noteId} with the OS; the web app currently uses HTTPS routes as the source of truth.
API bases
- Notes backend:
NEXT_PUBLIC_NOTES_API_URL(e.g.https://api.example.com/api) - Public share JSON:
GET {NOTES_API_URL}/public/note-shares/{token}(no auth)