superbee 0.0.1 → 0.1.1-pre.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +14 -0
  3. package/README.md +94 -7
  4. package/SKILL.md +453 -0
  5. package/dist/superbee.mjs +101701 -0
  6. package/package.json +38 -7
  7. package/references/recipes/claims/conventions/claim.md +39 -0
  8. package/references/recipes/claims/recipe.md +34 -0
  9. package/references/recipes/review-workflow/conventions/review-request.md +44 -0
  10. package/references/recipes/review-workflow/conventions/view.md +71 -0
  11. package/references/recipes/review-workflow/recipe.md +20 -0
  12. package/references/recipes/review-workflow/references/view-authoring-v0.md +324 -0
  13. package/references/recipes/review-workflow/views/review-workflow/reviews.html +27 -0
  14. package/references/recipes/review-workflow/views-registry/review-workflow-reviews.md +8 -0
  15. package/references/sample-bundle/concepts/index.md +4 -0
  16. package/references/sample-bundle/concepts/link-graph.md +25 -0
  17. package/references/sample-bundle/concepts/okf-alignment.md +26 -0
  18. package/references/sample-bundle/context-notes/cycle-okf-lite-vision.md +33 -0
  19. package/references/sample-bundle/context-notes/index.md +3 -0
  20. package/references/sample-bundle/index.md +8 -0
  21. package/references/sample-bundle/log.md +7 -0
  22. package/references/sample-bundle/references/index.md +3 -0
  23. package/references/sample-bundle/references/okf-spec.md +27 -0
  24. package/references/views/about.html +102 -0
  25. package/references/views/conventions/view.md +71 -0
  26. package/references/views/pulse.html +439 -0
  27. package/references/views/references/view-authoring-v0.md +324 -0
  28. package/references/views/roadmap.html +226 -0
  29. package/references/views/views-registry/about.md +12 -0
  30. package/references/views/views-registry/pulse.md +13 -0
  31. package/references/views/views-registry/roadmap.md +12 -0
@@ -0,0 +1,26 @@
1
+ ---
2
+ type: Concept
3
+ title: OKF Alignment
4
+ description: How Superbee maps agent knowledge onto Open Knowledge Format primitives.
5
+ tags: [okf, design, mapping]
6
+ timestamp: 2026-07-01T12:00:00Z
7
+ ---
8
+ # Summary
9
+
10
+ Superbee is an OKF-native store. Every agent artifact is one OKF concept
11
+ document: a markdown body with a YAML frontmatter block whose only required field
12
+ is `type`. Nothing here is a bespoke database record — it is the format itself.
13
+
14
+ # How it maps
15
+
16
+ * An agent **context note** becomes a concept doc — see the
17
+ [cycle-okf-lite-vision](../context-notes/cycle-okf-lite-vision.md) note, whose
18
+ `type` is `Context Note`.
19
+ * A **pointer** between notes becomes a standard markdown link, which the graph
20
+ reverses into backlinks — see [The Link Graph](./link-graph.md).
21
+ * The format we conform to is the
22
+ [Open Knowledge Format v0.1 (Draft)](../references/okf-spec.md).
23
+
24
+ # Citations
25
+
26
+ 1. [Open Knowledge Format v0.1 (Draft)](../references/okf-spec.md)
@@ -0,0 +1,33 @@
1
+ ---
2
+ type: Context Note
3
+ title: cycle-okf-lite-vision
4
+ description: Handoff for the OKF-native Superbee vision cycle.
5
+ tags: [claude-orchestrator, superbee, cycle-okf-lite-vision]
6
+ timestamp: 2026-07-01T12:10:00Z
7
+ ---
8
+ # Summary
9
+
10
+ This cycle established that Superbee should be OKF-native rather than a
11
+ store that merely exports to OKF. Notes, links, and freshness map cleanly onto
12
+ OKF concept docs, markdown links, and the `timestamp` field; remote sync is
13
+ deferred to a later adapter. Treat the OKF mapping as settled; treat the exact
14
+ cross-link form (relative vs absolute) as a deliberate, documented choice.
15
+
16
+ # Decisions
17
+
18
+ * Emit **relative** cross-links in produced bundles.
19
+ Rationale: relative links populate the reference visualizer's edge/backlink
20
+ graph, which skips absolute links.
21
+
22
+ # Open Questions
23
+
24
+ * Should the producer mirror Google's stricter `type+title+description+timestamp`
25
+ requirement, or only the spec's single required `type`? Unresolved until we
26
+ see how minimal real notes get.
27
+
28
+ # Pointers
29
+
30
+ * [OKF Alignment](../concepts/okf-alignment.md) — the concept that records the
31
+ full mapping this cycle settled.
32
+ * [Open Knowledge Format v0.1 (Draft)](../references/okf-spec.md) — the spec the
33
+ decisions above are grounded in.
@@ -0,0 +1,3 @@
1
+ # Context Note
2
+
3
+ * [cycle-okf-lite-vision](cycle-okf-lite-vision.md) - Handoff for the OKF-native Superbee vision cycle.
@@ -0,0 +1,8 @@
1
+ ---
2
+ okf_version: "0.1"
3
+ ---
4
+ # Subdirectories
5
+
6
+ * [concepts](concepts/index.md) - Core design concepts for Superbee.
7
+ * [context-notes](context-notes/index.md) - Cross-session agent handoffs stored as OKF concepts.
8
+ * [references](references/index.md) - Mirrored external sources cited by the concepts.
@@ -0,0 +1,7 @@
1
+ # Log
2
+
3
+ ## 2026-07-01
4
+
5
+ * **Creation** Seeded the sample bundle with the `OKF Alignment` and `Link Graph` concepts.
6
+ * **Update** Added the `cycle-okf-lite-vision` context note and wired its pointers into the graph.
7
+ * **Update** Mirrored the OKF spec under `references/` so citations resolve as first-class concepts.
@@ -0,0 +1,3 @@
1
+ # Reference
2
+
3
+ * [Open Knowledge Format v0.1 (Draft)](okf-spec.md) - The vendor-neutral spec Superbee conforms to.
@@ -0,0 +1,27 @@
1
+ ---
2
+ type: Reference
3
+ title: Open Knowledge Format v0.1 (Draft)
4
+ description: The vendor-neutral, filesystem-native knowledge format Superbee conforms to.
5
+ resource: https://github.com/GoogleCloudPlatform/knowledge-catalog/blob/main/okf/SPEC.md
6
+ tags: [okf, spec, reference]
7
+ timestamp: 2026-07-01T11:00:00Z
8
+ ---
9
+ # Summary
10
+
11
+ Open Knowledge Format (OKF) v0.1 (Draft), published by Google Cloud in
12
+ `GoogleCloudPlatform/knowledge-catalog` under `okf/`, defines a "Knowledge
13
+ Bundle" as a directory tree of UTF-8 markdown files. Each non-reserved `.md`
14
+ file is a Concept whose ID is its path minus `.md`. The only required
15
+ frontmatter field is `type`. This document mirrors the external spec as a
16
+ first-class concept (§8) so citations resolve inside the graph.
17
+
18
+ # Key sections
19
+
20
+ * §3 bundle structure and reserved filenames (`index.md`, `log.md`).
21
+ * §4 concept documents and §4.1 frontmatter (`type` required).
22
+ * §5 cross-linking: standard markdown links, absolute or relative, untyped.
23
+ * §9 conformance: parseable frontmatter, non-empty `type`, valid index/log.
24
+
25
+ # Citations
26
+
27
+ 1. [OKF SPEC.md](https://github.com/GoogleCloudPlatform/knowledge-catalog/blob/main/okf/SPEC.md)
@@ -0,0 +1,102 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1">
6
+ <title>About this bundle</title>
7
+ <style>
8
+ :root {
9
+ --bg: #fafaf8; --panel: #ffffff; --ink: #1a1a1e; --muted: #71717a;
10
+ --line: #e4e4e7; --accent: #6d5ae6; --accent-soft: #ece9fc;
11
+ --mono: ui-monospace, "SF Mono", Menlo, monospace;
12
+ }
13
+ @media (prefers-color-scheme: dark) {
14
+ :root {
15
+ --bg: #101014; --panel: #17171c; --ink: #ececf1; --muted: #8e8e98;
16
+ --line: #26262e; --accent: #9b8cf7; --accent-soft: #262040;
17
+ }
18
+ }
19
+ * { box-sizing: border-box; margin: 0; }
20
+ html, body { height: 100%; }
21
+ body {
22
+ font: 15px/1.6 -apple-system, "Segoe UI", system-ui, sans-serif;
23
+ background: var(--bg); color: var(--ink);
24
+ }
25
+ main { max-width: 40rem; margin: 0 auto; padding: 2.5rem 1.5rem 4rem; }
26
+ h1 { font-size: 1.5rem; font-weight: 650; letter-spacing: -0.01em; margin-bottom: 0.4rem; }
27
+ .kicker {
28
+ color: var(--accent); font-family: var(--mono); font-size: 0.8rem;
29
+ text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 0.6rem;
30
+ }
31
+ p { color: var(--muted); margin-bottom: 1rem; }
32
+ p strong { color: var(--ink); font-weight: 600; }
33
+ .card {
34
+ background: var(--panel); border: 1px solid var(--line); border-radius: 10px;
35
+ padding: 1rem 1.2rem; margin: 1.5rem 0;
36
+ }
37
+ .card h2 { font-size: 0.95rem; margin-bottom: 0.5rem; }
38
+ .card ul { margin: 0; padding-left: 1.2rem; color: var(--muted); }
39
+ .card li { margin-bottom: 0.35rem; }
40
+ code {
41
+ font-family: var(--mono); background: var(--accent-soft); color: var(--ink);
42
+ padding: 0.1rem 0.35rem; border-radius: 5px; font-size: 0.85em;
43
+ }
44
+ #toggle, #open-roadmap {
45
+ border: 1px solid var(--line); background: var(--panel); color: var(--ink);
46
+ border-radius: 8px; padding: 0.4rem 0.9rem; font-size: 0.85rem; cursor: pointer;
47
+ }
48
+ #detail { display: none; margin-top: 0.75rem; }
49
+ #detail.open { display: block; }
50
+ </style>
51
+ </head>
52
+ <body>
53
+ <main>
54
+ <div class="kicker">Content view</div>
55
+ <h1>About this bundle</h1>
56
+ <p>
57
+ This view is a <strong>content view</strong>: a self-contained HTML file that carries no
58
+ bundle data of its own and asks the shell for none. It is promoted and served exactly like
59
+ any other bundle view — versioned, attributed, and portable as a plain HTML file — but it
60
+ declares <code>access: none</code> in its registry doc, so the shell refuses every bundle-data
61
+ request on its behalf. It may still ask the trusted shell to open another registered View.
62
+ </p>
63
+
64
+ <div class="card">
65
+ <h2>Two kinds of view, one mechanism</h2>
66
+ <ul>
67
+ <li><strong>Data views</strong> (<code>access: bundle-read</code>) — read live bundle
68
+ data through the shell's read-only postMessage bridge. Pulse and Roadmap are data views.</li>
69
+ <li><strong>Content views</strong> (<code>access: none</code>, this view) — arbitrary
70
+ self-contained HTML: a report, a rendered design doc, a diagram, a note. No bridge calls,
71
+ no bundle access, enforced by the shell rather than left to convention.</li>
72
+ </ul>
73
+ </div>
74
+
75
+ <button id="toggle" type="button">Why no bridge call here?</button>
76
+ <button id="open-roadmap" type="button">Open the Roadmap view</button>
77
+ <div id="detail">
78
+ <p>
79
+ Nothing below was fetched from anywhere — it is inert markup toggled by a few lines of
80
+ inline JS. A content view may still use scripts for local interaction (this button, for
81
+ instance); what it cannot do is reach the bundle's data API, because the shell denies every
82
+ bundle-data request an <code>access: none</code> view sends, regardless of what the view's own
83
+ script asks for. View navigation reveals only whether the requested registered View exists;
84
+ it does not expose that View's data or HTML.
85
+ </p>
86
+ </div>
87
+
88
+ <script>
89
+ var PROTO = "v0";
90
+ function openPage(pageId) {
91
+ parent.postMessage({ bridge: PROTO, type: "open-page", pageId: pageId }, "*");
92
+ }
93
+ document.getElementById("toggle").addEventListener("click", function () {
94
+ document.getElementById("detail").classList.toggle("open");
95
+ });
96
+ document.getElementById("open-roadmap").addEventListener("click", function () {
97
+ openPage("views-registry/roadmap");
98
+ });
99
+ </script>
100
+ </main>
101
+ </body>
102
+ </html>
@@ -0,0 +1,71 @@
1
+ ---
2
+ type: Convention
3
+ title: View
4
+ governs: View
5
+ path: views-registry/
6
+ fields:
7
+ required:
8
+ - title
9
+ - entry
10
+ - access
11
+ optional:
12
+ - description
13
+ - entry_version
14
+ - presentation
15
+ values:
16
+ access:
17
+ - none
18
+ - bundle-read
19
+ - bundle-propose
20
+ presentation:
21
+ - workspace
22
+ - inline
23
+ - adaptive
24
+ terminal: {}
25
+ timestamp: "2026-07-24T00:00:00.000Z"
26
+ ---
27
+ # View
28
+
29
+ A bundle-hosted UI view. A `type: View` doc is a **registry entry**: it names a self-contained
30
+ HTML blob (`entry`, a bundle-relative blob key under `views/…`) that the `superbee ui`
31
+ launcher renders in a sandboxed, opaque-origin iframe. The view reaches bundle data only through
32
+ the narrow postMessage bridge documented in the bundle's
33
+ [View authoring reference](../references/view-authoring-v0.md) — it never holds a credential.
34
+ V0 is read-only; `bundle-propose` adds only a trusted-shell-confirmed v1 scalar action.
35
+
36
+ `Page` is the legacy name for this kind, and `bridge` the legacy spelling of `access` — and
37
+ neither is read any longer: a legacy `type: Page` doc does not register, and a doc declaring
38
+ only the legacy `bridge` field resolves to `access: none`. Docs under the legacy
39
+ `pages-registry/`/`pages/` prefixes stay recognized where they are once typed `View`; the
40
+ repo's `migrate-legacy-view-names` script renames leftover legacy names in place
41
+ (`superbee status` lists them under `legacy_naming`). Author views as `type: View` with `access`.
42
+
43
+ - `title` (required) — the launcher card's heading.
44
+ - `entry` (required) — the HTML blob key, e.g. `views/roadmap.html`.
45
+ - `entry_version` (optional) — an exact content-version pin. When present, every host refuses to
46
+ launch the View if the current entry bytes no longer match it. Ordinary mutable Views may omit it.
47
+ - `description` (optional) — one line shown on the launcher card.
48
+ - `presentation` (optional) — an advisory host-layout hint: `workspace | inline | adaptive`.
49
+ It never controls whether a host may run the View and never grants authority. A host may ignore
50
+ it when its available surface differs from the author's preference.
51
+ - `access` (required) — `none | bundle-read | bundle-propose`. Required so every View is an INTENTIONAL
52
+ classification, not a silent default — an author who forgets to declare it gets a clear
53
+ authoring-time lint, not a view that quietly renders empty against a full bundle. ENFORCED by
54
+ the shell too, not just linted: absent, malformed, or any value other than exactly
55
+ `bundle-read` or `bundle-propose` is treated as `none` at runtime — fail-closed defense for a doc this convention
56
+ didn't govern (an external bundle, a hand-edited file that skipped the lint).
57
+ - `bundle-read` — a **data view**: the shell answers its bridge requests (`hello`/`query`/
58
+ `read`/`render-document`/`edges`/`subscribe`) with live bundle data. Groups under the launcher's "Dashboards".
59
+ - `bundle-propose` — an **interactive view**: includes the read surface and may propose one
60
+ declared scalar field update. Every proposal is independently validated and shown in trusted
61
+ shell chrome; only the human's Apply action authorizes a hard-CAS local write.
62
+ - `none` — a **content view**: the shell DENIES every bundle-data request. Arbitrary
63
+ self-contained HTML with zero bundle-data access — a report, a rendered design doc, a diagram.
64
+ It may still ask the shell to open another registered View. Groups under "Documents".
65
+
66
+ Both capabilities may use `open-page` (the bridge's wire verb, kept stable across the rename) to
67
+ navigate to another valid registered View. This shell action returns no target content or
68
+ metadata and grants no bundle-data capability.
69
+
70
+ Views sync, version, and attribute like any doc; the HTML bytes travel as an opaque blob via
71
+ `promote`/`pull`, never through the model context window.