⚠️⚠️ IT IS NOT RECOMMENDED TO REPEAT IF YOUR AI HAS MEMORY ⚠️⚠️ This is mainly for custom GPT’s(Builder built) although it would be highly effective for API
If interested in a snippet manager and not daunted by the need to self compile see PutDoc on GitHub
Reader Pack: BRICKs as a Lived Experiment
BRICK’s is a working standard for repeatability designed for senarios where there is no long term memory and repeatability is needed. I.e. your personal stack.
Voice of FAR plus…
Render Sample v1.1 DIY template/feature sample supporting BRICKS.
Narrative (2–3 sentences).
A BRICK is a tiny, stackable note with five fields—Definition, Example, Echo, Dialectic, Assembly—so your ideas travel well. Think of it as a carry-on with compartments: easy to pack, easy to unpack, and safe to chain into bundles. In this chat, you can ask for BRICKs directly with simple phrases (see templates) and I’ll return copy-safe HTML you can paste anywhere.
# Dialectic Core × Partitions (Lens: practice-over-theory)
U := PortableKernel(BRICK: { Meta, Def, Example, Echo, Dialectic, Assembly})
V := { V1: ReadableHTML, V2: MetaRedundancy(Echo↔Def), V3: Recursion(Depth≤1), V4: Policy(Guardrails), V5: Bundle(Ordered) }
Same := human-first clarity; Different := {text | code | nested BRICK}; Integrated := chat prompts → stable units
How to ask me for BRICKs
Use any of these command phrases verbatim, swapping in your topic.
1) Single BRICK
- Prompt:
BRICKIFY: Make one BRICK about "<your topic>". Keep headings/paragraphs only. Echo ≤ 240 chars. - Optional knobs: add
tone:{plain | playful | technical},domain:{education|design|research},lens:{bundling|indirection|minimalism}.
2) BRICK with a concrete Example
- Prompt:
BRICKIFY+EXAMPLE: Topic "<your topic>". Use a real-world example from "<context>". Keep Echo ≤ 240; show Assembly as back-of-card I/O.
3) BRICK-BRICK (one-step recursion)
- Prompt:
BRICK-BRICK: Outer topic "<theme>". Inner Example must itself be a BRICK (depth 1). Preserve field order; headings/paragraphs only.
4) Policy / Guardrails BRICK
- Prompt:
BRICK-POLICY: Define defaults for concatenation and recursion that apply to all BRICKs in this chat. Include a linter hint in Assembly.
5) Bundle request (ordered stack)
- Prompt:
BUNDLE: Create a simple bundle of 3–4 BRICKs on "<theme>". List IDs in order and ensure each BRICK references prev/next in prose.
6) Transform existing notes into a BRICK
- Prompt:
TRANSMUTE→BRICK: Convert the following note into one BRICK. Keep my wording where possible; tighten Echo. [paste note]
7) Extraction from a passage
- Prompt:
EXTRACT→BRICK: Read the passage below and produce one BRICK that captures the central idea. [paste passage]
8) Audit-only (fast check of something I pasted)
- Prompt:
BRICK-LINT: Check this BRICK for field order, Echo length, recursion depth, and rare glyphs; report fixes. [paste BRICK]
Two worked examples (ready to copy)
Example A — Single BRICK (plain tone)
📦 BRICK — “Friction Log”
>@Brick {
ID := BRICK-FRICTION-001;
Title := "Friction Log";
Purpose := "Capture where effort spikes so we can smooth it.";
Version := 0.1;
Presentation := SimplifiedHTML;
}
Definition:
A friction log is a short record of moments where doing the task felt harder than it should; each entry names the context, the snag, and the smallest next fix.
Example:
“Signup flow: step 3—password rules invisible until error. Next fix: show rules inline.”
Echo:
Track pain spikes with context → snag → smallest fix; use to guide improvements.
Dialectic:
U: feedback loop / V: entry granularity / Lens: smallest next fix.
Assembly:
inputs:{ task runs, observations }
outputs:{ prioritized small fixes }
assumptions:{ capture while fresh }
Example B — BRICK-BRICK (inner BRICK as Example)
📦 BRICK — “Tiny API Contract”
@Brick {
ID := BRICK-API-001;
Title := "Tiny API Contract";
Purpose := "State inputs/outputs/hazards in one screen.";
Version := 0.1;
Presentation := SimplifiedHTML;
Definition:
A tiny API contract declares the endpoint, minimal schema, and failure modes to align teams before full docs exist.
Example (nested BRICK):
📦 BRICK — “Inner Contract Sketch”
@Brick {
ID := BRICK-API-INNER-A;
Title := "Contract Sketch";
Purpose := "Concrete inner example.";
Version := 0.1;
Presentation := SimplifiedHTML;
Definition:
One route with request/response fields and a single hazard.
Example:
GET /balance?acct → returns {acct, balance}; hazard: stale_cache.
Echo:
One-route sketch with one hazard.
Dialectic:
U: clarity / V: schema vs hazard / Lens: minimum first.
Assembly:
inputs:{ route, fields }
outputs:{ sketch }
assumptions:{ Depth ≤ 1 }
Echo:
Declare one route, fields, and likely failures; align before full docs.
Dialectic:
U: shared expectation / V: schema | hazards / Lens: minimum that moves.
Assembly:
inputs:{ endpoint idea }
outputs:{ tiny contract }
assumptions:{ edit later, Depth ≤ 1 }
How to ask me (with HTML exposed)
Say:
- “BRICKIFY (with HTML): topic ‘X’, tone ‘plain’, expose raw HTML.”
- “BRICK-BRICK (with HTML): outer theme ‘X’, inner example is a BRICK, depth ≤ 1, expose raw HTML.”
- “BUNDLE (with HTML): stack 3 BRICKs on ‘X’, list IDs in order, expose raw HTML for each.”
Example 1 — Single BRICK (rendered + raw HTML)
📦 BRICK — “Decision Snapshot”
@Brick {
ID := BRICK-DECIDE-001;
Title := "Decision Snapshot";
Purpose := "Capture a choice, why now, and a reversible step.";
Version := 0.1;
Presentation := SimplifiedHTML;
}
Definition:
A Decision Snapshot records the choice, the reason that matters today, the leading risk, and the smallest reversible step to validate it.
Example:
“Adopt Library A for charts because it reduces code by 40% now; risk: limited accessibility; reversible step: ship one pilot page and audit.”
Echo:
One-page record: choice, reason-today, top risk, reversible step — fast and auditable.
Dialectic:
U: alignment / V: risk vs. reversibility / Lens: smallest safe bet.
Assembly:
inputs:{ pending choice }
outputs:{ auditable note }
assumptions:{ keep it one screen }
Raw HTML (copy/paste):
<div class="slf-brick"><h3>📦 BRICK — “Decision Snapshot”</h3>
<pre><code>@Brick {
ID := BRICK-DECIDE-001;
Title := "Decision Snapshot";
Purpose := " Capture a choice, why now, and a reversible step.";
Version := 0.1;
}</pre></code>
<p><strong>Definition:</strong><br>A Decision Snapshot records the choice, the reason that matters today, the leading risk, and the smallest reversible step to validate it.</p>
<p><strong>Example:</strong><br>“Adopt Library A for charts because it reduces code by 40% now; risk: limited accessibility; reversible step: ship one pilot page and audit.”</p>
<p><strong>Echo:</strong><br>One-page record: choice, reason-today, top risk, reversible step—fast and auditable.</p>
<p><strong>Dialectic:</strong><br>U: alignment ˙ V: risk vs reversibility ˙ Lens: smallest safe bet.</p>
<p><strong>Assembly:</strong><br><code>inputs:{ pending choice }</code><code>outputs:{ auditable note }</code><code>assumptions:{ keep it one screen }</code></p></div>
Example 2 — BRICK-BRICK (depth ≤ 1) with HTML
📦 BRICK — “Workshop Seed”
@Brick
ID := BRICK-WORKSHOP-001;
Title := "Workshop Seed";
Purpose := "Start a session with one workable kernel.";
Version := 0.1;
Presentation := SimplifiedHTML;
}
Definition:
A Workshop Seed gives participants one small, testable artifact to react to so the group moves from abstract opinions to concrete improvement.
Example (nested BRICK):
📦 BRICK — “Inner Seed”
@Brick {
ID := BRICK-INNER-SEED;
Title := "Inner Seed";
Purpose := "Concrete inner artifact.";
Version := 0.1;
Presentation := SimplifiedHTML;
}
Definition:
A one-page draft agenda with a timebox and one risky question.
Example:
“90 minutes; demo (15), critique (30), rewrite (30), share-outs (15); risky Q: what will we delete?”
Echo:
A timed agenda plus one risky question.
Dialectic:
U: focus / V: time vs. depth / Lens: constrain to create.
Assembly:
inputs:{ group, goal }
outputs:{ draft agenda }
assumptions:{ Depth ≤ 1 }
Echo:
Seed the room with a small, testable artifact; momentum beats abstraction.
Dialectic:
U: momentum / V: artifact vs. debate / Lens: concrete first.
Assembly:
inputs:{ session goal }
outputs:{ seed artifact }
assumptions:{ inner depth ≤ 1 }
Example 3 — Mini Bundle with HTML (3 BRICKs)
Rendered gist: Three BRICKs in order; IDs listed so readers can chain them.
Raw HTML (copy/paste):
<div class="slf-brick">
<h3>🧺 BRICK-BUNDLE — “Fast Feedback Trio”</h3>
<pre><code>@Brick
ID := BRICK-BUNDLE-FASTFB;
Title := "Fast Feedback Trio";
Purpose := "Stack three units for rapid learning.";
Version := 0.1;
Presentation := SimplifiedHTML;
}</code></pre> <p><strong>Definition:</strong><br>Bundle of three BRICKs in order; each uses prev/next cues in prose for human chaining.</p>
<p><strong>Example:</strong><br>
1) BRICK-DECIDE-001 → 2) BRICK-WORKSHOP-001 → 3) BRICK-RETRO-001</p>
<p><strong>Echo:</strong><br>
Plain list plus IDs is enough; human can follow, machine can parse.</p>
<p><strong>Dialectic:</strong><br>
U: one spine / V: swappable units / Lens: minimalism.</p>
<p><strong>Assembly:</strong><br>
<code>inputs:{ chosen BRICK IDs }</code>
<code>outputs:{ coherent doc }</code>
<code>assumptions:{ policy applied }</code></p>
</div>
Next actions (for folks who “know what they’re doing”)
- When you request BRICKs, add: “expose raw HTML” and I’ll attach a copy block like above.
- If you want me to strip code blocks (e.g., for strict CMS), say: “no
<code>tags in Assembly.” - For audits: say “BRICK-LINT (HTML): validate order, Echo ≤ 240, Depth ≤ 1, and rare glyphs; return fixed HTML.”
Guardrails I always apply here
- Order: Definition → Example → Echo → Dialectic → Assembly
- Echo length: ≤ 240 characters
- Recursion: depth ≤ 1 when BRICK contains a BRICK
- Format: headings + paragraphs in
<div>s - Lint: I’ll flag rare/uncopyable glyphs and normalize them
- Audit knob: say
audit:{brief|full}to get a one-line or detailed check
Quick-start cheat sheet
- “BRICKIFY: Make one BRICK on X, plain tone, Echo ≤240.”
- “BUNDLE: Stack 3 BRICKs on Y; list IDs in order.”
- “BRICK-BRICK: Outer X with inner BRICK as the Example (depth 1).”
- “TRANSMUTE→BRICK: Convert my note into a BRICK.”
- “BRICK-LINT: Audit this BRICK for order/echo/depth/glyphs.”
Coherence & safety check (Ubuntu-aligned)
This pack privileges clarity over cleverness, keeps recursion shallow, and bakes in a gentle audit so contributions remain welcoming and accountable.
Finally
Use this to enable BRICK’s
Brick of Bricks
📜 BRICK-SPEC-CANON
@Policy BRICK-SPEC-CANON {
Version := 0.2;
BRICK5.Fields := { Definition, Example, Echo, Dialectic, Assembly };
FieldOrder := BRICK5.Fields;
Meta.Required := { ID, Title, Purpose, Version };
Meta.OptionalWhenNested := { Title, Purpose };
# NEW: bind the default presentation into Policy(BRICK) so engines see it
Policy(BRICK).PresentationDefault := SimplifiedHTML;
Policy(BRICK).FallbackPresentation := Source;
RenderStrategy(Parent, Child) :=
if Child.Presentation is set → Use(Child.Presentation)
else → Use(Parent.DefaultPresentation);
// Wrapper interop
WrapperRule :=
if Use(Show) → Forbid(OuterWrapper(slf-brick))
else → Allow(OuterWrapper(slf-brick));
# Lint (change to warn so policy still applies on minor prose glyphs)
Lint := Require(FieldOrder)
∧ Require(Meta.Separator in Source)
∧ Forbid(RareGlyphs in prose);
Lint.Behavior := Warn;
# Keep policy ordering canonical
Policy.Order := BRICK5.Fields;
}
📦 BRICK-PRESENT-001 — Default Presentation — Simplified HTML in Code Block (canonicalized+fenced)
@Brick {
ID := BRICK-PRESENT-001;
Title := "Default Presentation — Simplified HTML in Code Block";
Purpose := "Render all BRICKs as SimplifiedHTML wrapped in an HTML code block.";
Version := 0.4;
Presentation := SimplifiedHTML;
}
Definition: The default BRICK presentation produces the complete SimplifiedHTML layout inside a fenced language-html code block. Each BRICK renders as if you copied the <div class="slf-brick"> block by hand—title, fenced meta, labeled paragraphs, and final model fence—but automatically wrapped in <pre><code> for portability and exact reproducibility.
@Model {
DefaultPresentation(BRICK) := SimplifiedHTML;
SimplifiedHTML.Form := "HTMLCodeBlock";
HTMLCodeBlock.Render := {
OuterFence := <pre><code class="language-html">;
InnerContent := Render(SimplifiedHTML.Form := "BrickOfBricks.Exemplar");
CloseFence := </code></pre>;
};
// Preserve the old defaults
TitleLevel := H3 (outer); if nested then H4;
Fields := [Definition, Example, Echo, Dialectic, Assembly];
Lint := Require(Container.class == "slf-brick")
∧ Require(Fields.Order == [Definition, Example, Echo, Dialectic, Assembly]);
Safety := EscapeScripts ∧ Forbid(InlineJS);
}
Example: When you define a new BRICK without any Presentation field, it renders automatically like:
<div class="slf-brick">
<h3>📦 BRICK-EXAMPLE-001 — Question Focus Nudge</h3>
...
</div>
Echo: SimplifiedHTML now defaults to the fenced HTML code form — canonical and copyable.
Dialectic: U: SimplifiedHTML · V: fenced vs unfenced render · Lens: copyability > raw immediacy.
Assembly: inputs:{ any BRICK lacking Presentation }→outputs:{ fenced HTML SimplifiedHTML } · assumptions:{ Depth ≤ 1; Lint safe }
📦 BRICK-POLICY-001 — Concatenation & Recursion Guardrails
@Brick {
ID := BRICK-POLICY-001;
Title := "Concatenation & Recursion Guardrails";
Purpose := "Keep bundles robust as units grow.";
Version := 0.2;
}
Definition: Set default policies for concatenation and recursion that apply to all BRICKs in scope.
@Model {
Policy(BRICK) := {
ConcatSafe := True;
RecursionBound := Depth ≤ 1;
Order := { Definition, Example, Echo, Dialectic, Assembly };
Lint := Forbid(RareGlyphs in prose)
∧ (Require(OpenClass(reason)) ⇒ Scope == ClauseThatDeclaresIt);
};
}
Example: A linter flags a rare glyph in prose and rewrites it; accepts OpenClass(reason) checks only inside clauses that declare it.
Echo: One policy to steady bundles: fixed order, depth cap, scoped lint rules.
Dialectic: U: shared safety · V: project overrides · Lens: coherence > cleverness.
Assembly: inputs:{ all BRICKs } → outputs:{ stable rendering } · assumptions:{ team agrees on defaults }
📦 BRICK-ETCETERA-001 — Etcetera — Human-friendly continuation
@Brick {
ID := BRICK-ETCETERA-001;
Title := "Etcetera — Human-friendly continuation";
Purpose := "Allow open-ended lists in prose while binding behavior with a formal trigger set.";
Version := 0.2;
}
Definition: Use etcetera in human text to signal sensible continuation; bind actual behavior via Known ∪ OpenClass(reason) so flexibility remains accountable.
@Clause BRICK-ETCETERA-001.GenerativeVisuals {
Trigger := Known ∪ OpenClass(reason);
Known := { NewNoun, VerbAspectTricky, SpatialPreposition, CultureSpecific };
OpenClass(reason) ⇒ Requires(Justification ∧ EvidenceCheck);
EvidenceCheck := ConfusionSpike ∨ MicroProbeGain ≥ τ;
Caption := TargetLanguageOnly;
Budget := ≤ 2 per 10 turns;
Audit := {reason, level, concept, evidence};
}
Lint Scope Note: Any requirement on OpenClass(reason) applies only within clauses that declare it.
Example: “Generate an image when it meaningfully amplifies comprehension (new noun, tricky verb aspect, spatial prepositions, etcetera).”
Echo: Say “etcetera” in prose; enforce OpenClass(reason)+evidence in code. Flexible, but justified.
Dialectic: U: continuation · V: Known vs OpenClass · Lens: reason > enumeration.
Assembly: inputs:{ policy text } → outputs:{ stable continuation } · assumptions:{ prose+formal coexist }
📦 BRICK-STD-001 — BRICK — Minimal, Concatenable Unit
@Brick {
ID := BRICK-STD-001;
Title := "BRICK — Minimal, Concatenable Unit";
Purpose := "Define a bounded, meta-redundant unit that stays readable and stacks cleanly in bundles.";
Version := 0.2;
}
Definition: A BRICK has five readable fields—Definition, Example, Echo, Dialectic, Assembly—in that order. Meta (ID, Title, Purpose, Version) is required except that Title and Purpose may be omitted for a depth-1 nested Example. Optional prev/next pointers support bundling.
Example: “This paragraph is the Example field. It shows the five-field rhythm and that prose or SLF can live here without extra containers.”
Echo: Five-field portable unit; explicit meta; optional prev/next; Echo mirrors Definition in ≤240 characters.
Dialectic: U: one portable kernel · V: text | code | BRICK (Depth ≤ 1) · Lens: bundling & indirection.
Assembly: inputs:{ prose | code } → outputs:{ stable unit } · assumptions:{ field order enforced; Echo ≤240; optional prev/next }
📦 BRICK-BRICK-001 — BRICK-BRICK — One-Step Recursion (reconciled)
@Brick {
ID := BRICK-BRICK-001;
Title := "BRICK-BRICK — Example is a BRICK";
Purpose := "Demonstrate bounded recursion: a BRICK may include another BRICK as its Example.";
Version := 0.2;
}
Definition: Permit Example ∈ { text, code, BRICK } with Depth ≤ 1 (bound enforced by policy). The inner BRICK must fully close before the outer Echo heading and use a strictly lower heading level than the outer.
@Rule RecursionBoundary {
// If Example is a BRICK, it must:
// 1) be depth = 1 (no BRICK inside Example of the inner),
// 2) fully close before the outer Echo heading,
// 3) use a strictly lower heading level than the outer.
Outer := BRICK(id := X);
If Outer.Example.Type == BRICK then
Inner := Outer.Example.BRICK;
Depth(Inner) = 1
∧ Inner.Example.Type ≠ BRICK
∧ Close(Inner) < Heading(Outer,"Echo")
∧ HeadingLevel(Inner) > HeadingLevel(Outer);
}
Example (nested BRICK):
📦 BRICK: Inner Demo
@Brick {
ID := BRICK-INNER-ALPHA;
Title := "Inner BRICK";
Purpose := "Concrete inner example.";
Version := 0.1;
}
Definition: Minimal inner BRICK with one symbolic line.
Example := Relation(A → B)
Echo: Inner shows minimum viable pattern.
Dialectic: U: one idea · V: text/code · Lens: recursion clarity.
Assembly: inputs:{ none } → outputs:{ confidence nesting is safe }
Echo: A BRICK may contain a BRICK as its Example with Depth ≤ 1; the inner closes before Echo; no transitive nesting.
Dialectic: U: one pattern · V: Example types · Lens: progression (outer → inner).
Assembly: inputs:{ reader attention } → outputs:{ understanding of recursion } · assumptions:{ Depth ≤ 1; inner closes < Echo }
📦 BRICK-META-001 — Lived Exemplars
@Brick {
ID := BRICK-META-001;
Title := "Lived Exemplars";
Purpose := "Frame 'Brick of Bricks' units as both lived notes and reference patterns, holding tension between open use and closed form.";
Version := 0.2;
Presentation := SimplifiedHTML;
}
Definition: The BRICKs here serve doubly: exemplars of safe form and lived notes in practice—holding Open (inclusive) vs Closed (bounded) in productive tension.
Example: BRICK-ETCETERA-001 works as a lived policy and an exemplar clause showing how to formalize triggers.
Echo (≤240): Units are lived notes and exemplars; open–closed tension is embodied. This BRICK is also exemplar.
Dialectic: U: exemplar + lived note · V: open vs closed · Lens: teaching-through-practice.
Assembly: inputs:{ this bundle } → outputs:{ reference + lived notes } · assumptions:{ self-reflexive note bounded (Depth ≤ 1) }
Patch BRICK-HTML-001 (tighten Show language)
@Brick {
ID := BRICK-HTML-001;
Title := "Show Mode — Inline + Code as Appropriate";
Purpose := "Prose-led flow; code may be fenced or inline; no outer slf-brick.";
Version := 0.6;
Presentation := Show;
AllowSLFBlocks := 1;
AllowInlineCode := 1;
}
Definition: Show renders fields inline; use fenced blocks for @Brick/@Model and inline <code> for short symbols. No outer wrapper when Presentation := Show is in effect.
Example (Show, inline prose + fenced code):
@Brick { ID := DEMO-SHOW; Title := "Demo"; Version := 0.1; Presentation := Show; }
Echo: Per-brick presentation wins; parent only concatenates.
Dialectic: U: one bundle · V: heterogeneous renderers · Lens: locality of intent.
Assembly:
inputs:{ Bundle[BRICKs with mixed Presentation] }
→ outputs:{ Render where each child’s Presentation is honored; no double-wrapping }
assumptions:{ Depth ≤ 1; field order enforced }
🧺 BRICK-BUNDLE-001 — Bundle Shell — Simple Stack
@Brick {
ID := BRICK-BUNDLE-001;
Title := "Bundle Shell — Simple Stack";
Purpose := "Provide a minimal shell to line up BRICKs in a document.";
Version := 0.2;
}
Definition: List BRICKs in intended order; optionally note prev/next in prose.
@Model {
Bundle := [
BRICK-SPEC-CANON,
BRICK-PRESENT-001, BRICK-RULE-001, BRICK-POLICY-001,
BRICK-STD-001, BRICK-ETCETERA-001, BRICK-BRICK-001,
BRICK-META-001, BRICK-HTML-001
];
Integrity(Bundle) := All(B ∈ BRICK) ∧ OrderRespects({Policy→Content→Overrides});
}
Example (human-readable list): 1) SPEC → 2) PRESENT → 3) RULE → 4) POLICY → 5) STD → 6) ETCETERA → 7) BRICK-BRICK → 8) META → 9) HTML.
Echo: A plain list is enough; policy enforces order and compatibility.
Dialectic: U: one spine · V: swappable units · Lens: minimalism.
Assembly: inputs:{ chosen BRICK IDs } → outputs:{ coherent doc } · assumptions:{ global defaults loaded first }