Claude
Skills
Sign in
Back

dln

Included with Lifetime
$97 forever

This skill should be used when the user wants to learn a new domain from scratch using structured cognitive phases, or when they say "dln", "dln list", "dln reset [domain]", "learn [domain]", "teach me [domain] from zero", "cold-start [domain]", "start learning [domain]", "continue learning [domain]", "resume [domain]", "pick up [domain]", "review [domain]", "dln exam [domain] by [date]", "dln exam [domain] status", "dln mock [domain]", "dln cram [N]d [domain]", "exam mode", "exam prep", or reference the Dot-Linear-Network framework. It orchestrates three phase skills (dln-dot, dln-linear, dln-network) based on the learner's current phase stored in a Notion database, routing them to the appropriate learning protocol for their level of understanding. Also handles exam mode: metadata capture, Blueprint creation, priority scoring, time-horizon presets, and exam lifecycle management.

Productivity

What this skill does


# DLN Learn — Domain-Agnostic Learning Orchestrator

A meta-learning skill that accelerates cold-start learning in any new domain using the Dot-Linear-Network (DLN) cognitive topology framework. This skill routes learners to the appropriate phase skill based on their tracked progress.

---

## 1. The DLN Framework

Learning follows three cognitive phases, each requiring a different teaching strategy:

| Phase | Mental State | Teaching Ratio | Goal |
|-------|-------------|----------------|------|
| **Dot** | Isolated facts, no connections | 70% delivery / 30% elicitation | Build concept nodes and basic causal chains |
| **Linear** | Procedural chains, domain-specific | 50% delivery / 50% elicitation | Discover shared factors across chains, build transferable understanding |
| **Network** | Compressed model, cross-domain links | 20% delivery / 80% elicitation | Stress-test, refine, and compress the learner's mental model |

The framework is domain-agnostic — it works for options pricing, compiler design, immunology, or any domain where the learner starts from zero.

---

## 2. Notion Database

All learner state is persisted in the **DLN Profiles** database in Notion (under Maekar). Database IDs are owned by the `dln-sync` agent — the orchestrator and phase skills reference the database by name only.

### Schema

#### Column Properties (queryable metadata)

| Property | Type | Purpose |
|----------|------|---------|
| Domain | title | The learning domain (e.g., "Options Pricing") |
| Phase | select | Current phase: Dot, Linear, or Network |
| Last Session | date | Timestamp of most recent session |
| Session Count | number | Total sessions in this domain (authoritative source) |
| Next Review | date | Computed review date — when this domain should next be reviewed |
| Review Interval | number | Current spacing interval in days (starts at 1, expands on successful review) |
| Exam Mode | checkbox | Whether exam mode is active for this domain |
| Exam Date | date | Target exam date (only set when Exam Mode is true) |

#### Page Body (learning content)

All learning content lives in the domain page body, not column properties. The page body has two sections:

**Knowledge State** — Persistent header updated at every teaching boundary. Contains:
- `## Concepts` — Concept nodes learned (Dot phase output)
- `## Chains` — Procedural sequences built (Dot phase output)
- `## Factors` — Shared structures discovered (Linear phase output)
- `## Compressed Model` — Latest model statement (Network phase output)
- `## Interleave Pool` — Concepts and factors eligible for interleaving (introduced in a prior session and passed initial comprehension check). Maintained by phase skills to enable cross-topic practice.
- `## Calibration Log` — Per-concept confidence ratings, gate predictions vs actual outcomes, and calibration trend over time. Used by phase skills to detect overconfidence/underconfidence and adjust teaching intensity.
- `## Load Profile` — Baseline cognitive load observations (working batch size, hint tolerance, recovery pattern) and per-session load history. Used by Dot phase for dynamic batch sizing and by all phases for load-aware pacing.
- `## Exam Metadata` — Exam configuration (date, format, duration, marks, AI policy, target score). Only populated when exam mode is active.
- `## Exam Blueprint` — Priority-scored topic map, high-yield queue, and past paper analysis. Only populated when exam mode is active.
- `## Exam Metrics` — Per-topic accuracy, time/question, retention deltas, aggregate readiness. Updated by phase skills during exam mode sessions.
- `## Question Bank` — Collected exam-style questions with metadata for mock generation.
- `## Mock History` — Results from mock exam sessions.
- `## Error Taxonomy` — Classified error patterns with frequency and remediation tracking.
- `## Past Exams` — Archive of completed exam cycles with self-reported results.
- `## Open Questions` — Unresolved gaps
- `## Weakness Queue` — Priority-ranked queue of items the learner has not mastered. Rewritten (not appended) at each teaching boundary. Derived from mastery table statuses. Used by phase skills to drive session planning.
- `## Engagement Signals` — Lightweight motivational state (momentum, consecutive struggles, last celebration, notes). Updated by phase skills at teaching boundaries.

Each of Concepts, Chains, and Factors uses a mastery tracking table with columns:
- **Status:** `not-mastered` | `partial` | `mastered`
- **Evidence:** Compact append-only log of assessment events (e.g., "Recall pass (S2), chain trace fail (S3)"), each tagged with session number.
- **Last Tested:** Date of most recent assessment event.

Mastery status is updated by phase skills at every teaching boundary via the `dln-sync` agent. The orchestrator does not interpret mastery data — it passes the extracted Knowledge State block to the phase skill, which reads and acts on the tables.

**Session Logs** — Dated sections appended below Knowledge State by each phase skill. Contains session plan, progress notes, and plan adjustments. Old session logs are kept for audit but are NOT read back during mid-session syncs.

#### Page Body Initialization Template

When creating a new domain profile, write the skeleton from `@references/init-template.md` to the page body.

---

## 3. Orchestrator Flow

### Step 1: Parse Domain

Extract the domain name and command type from the user's message. Examples:
- "dln options pricing" → standard session, domain = `Options Pricing`
- "learn compiler design from scratch" → standard session, domain = `Compiler Design`
- "dln list" → list command
- "dln reset options pricing" → reset command
- "dln exam options pricing by June 15" → exam command, domain = `Options Pricing`, date = `June 15`
- "dln exam options pricing status" → exam status command, domain = `Options Pricing`
- "dln mock options pricing" → mock exam command, domain = `Options Pricing`
- "dln cram 5d options pricing" → cram command, domain = `Options Pricing`, days = 5

If no domain is specified, ask: *"What domain would you like to learn? Give me a topic and I'll set up your learning path."*

### Step 2: Handle Special Commands

**`list`** — Query the DLN Profiles database and display all domains with their current phase, session count, last session date, and review status in a table. For each domain, compute review status:

- **Overdue** — Today is past Next Review date. Show how many days overdue in red: "⚠ 5 days overdue"
- **Due today** — Next Review is today. Show: "Due today"
- **Upcoming** — Next Review is in the future. Show: "In [N] days"
- **No data** — Next Review is empty (legacy profile). Show: "Not scheduled"

Sort the table with overdue domains first (most overdue at top), then due today, then upcoming.

For domains with Exam Mode = true, add an Exam column showing the exam date and days remaining:

Example output:

| Domain | Phase | Sessions | Last Session | Coverage | Review Status | Exam |
|--------|-------|----------|-------------|----------|---------------|------|
| Options Pricing | Linear | 7 | 2026-03-05 | 14/16 (88%) | ⚠ 4 days overdue | Jun 15 (71d) |
| Compiler Design | Dot | 3 | 2026-03-10 | 5/12 (42%) | Due today | — |
| Immunology | Network | 12 | 2026-03-09 | 20/20 (100%) | In 5 days | — |

If no syllabus exists for a domain, show "No syllabus" in the Coverage column.

**`reset [domain]`** — Find the matching row. Confirm with the user before executing. Then:
1. Replace the page body with the initialization template from `@references/init-template.md` (clearing all Knowledge State and session logs)
2. Set Phase back to Dot
3. Reset Session Count to 0
4. Clear Last Session

### Step 2a: Handle Exam Commands

Exam commands are processed after standard special commands. If the parsed command is an exam command, handle it here instead of proceeding to Step 3.

#### `dln exam [domain] by [date]`

1. Parse domain and exam date from the command.
2. Query or create 
Files: 5
Size: 56.2 KB
Complexity: 53/100
Category: Productivity

Related in Productivity