◈ ASHLIGHT v7.5
Project
+New Project
Open Project .zip
Rename Project
Duplicate Project
Delete Project
Import
Import JSON paste / drop
Run Demo Project guided tour
Save / Export
💾Save Project .zip
📦Save Workspace .zip
Export HTML Snapshot
{ }Export JSON
Export Agent Bundle select project
🎓Agent Training Bundle teach any agent
Workspace
Settings
?Help & About
Reset Workspace
Staging
Planned
In Progress
Done
Ashlight Systems
System Authoring for the Agentic Era
Give your ideas to an AI agent. Get back a fully structured project — blocks, subtasks, assets, dependencies — dropped into a live board in a single import.
+
Create
Start a new project. Add blocks manually or paste a quick list to seed your board.
Open ZIP
Restore a saved session. Blocks, assets and audit logs all travel with it.
Import JSON
Paste or drop agent-generated JSON. The parser detects the format automatically.
Run Demo
A guided walkthrough — the agent loop, live board, export moment. See it all first.
Staging
0
⊡ Archive 0 items
◈ ASHLIGHT
TASK COMPOSER
v7.5 · Schema v2 · Built April 2026
A block-based project composition tool with a governed AI import pipeline. Structure your projects, export an agent bundle, let an AI iterate on it, import the result cleanly. The Diff v2 engine ensures every agent update is safe, reversible, and traceable. Every block is a system. Every import is a governed merge.
diff v2 engine undo / redo workspace tabs component instances agent bundle export audit trail per-project T3 modal dev console
🔐
Identity Spine
Every block, subtask, and project has a stable ID assigned at creation — never changed, never reassigned. The Diff v2 engine uses these IDs to match incoming data against the live registry. No duplicates. No silent overwrites.
Safe Agent Loop
Export a bundle with your project's stable IDs. Agent reads it, updates blocks by ID, returns Tier 2 JSON. Import — diff runs, only changes applied, rest skipped. Ctrl+Z undoes the entire batch. Loop indefinitely without fear.
Composable Workspace
Above the board sits a composition layer. Workspace tabs hold component instances — file manager, browser, notes — side by side with your project. The board stays pure. The workspace extends freely around it.
Systems, Not Tasks
Every block carries a brief, extended notes, priority, hours, dependencies, subtasks, and a full named asset library. Blocks represent systems — they travel with all their context in every export and agent bundle.
Automatic Audit Trail
Every status change, edit, import, and archive action is timestamped automatically. The dev console shows every diff event in real time. Export the log as a .txt file. Your agent always sees the full decision history.
📦
Portable by Design
Export any project as a structured ZIP — workspace.json, per-block JSON, text assets as real files, agent instructions. Import it back anywhere. No cloud dependency. No lock-in. Your work travels with you.
Coming Next
Electron Build — full filesystem, webview browser, terminal lane, native file access
Lane Manager + Builder — slot assignment controls, layout templates, component config panels
Agent Lane — embedded AI panel as a workspace component, structured generation via Diff v2
Component Library — card/list view, usage tracking, search, pin common components
DSL + Registry — formal component registry, DSL verb set, macro composition engine
Full Workspace Mode — active workspace takes full screen, composer hidden, focus mode
© Ashlight Systems — All Rights Reserved
Built by Ashlight Systems in collaboration with Claude (Anthropic).
Protected under Australian Copyright Law as an original software work.
Ashlight Task Composer v7.5 — Undergoing active development. Not licensed for redistribution.
All rights reserved pending formal release. For testing and internal use only.
The Mental Model
Everything is a hierarchy. You never work with a flat list — you work with a workspace containing projects, each containing blocks, each containing subtasks and assets.
Workspace └── Project └── Block ← a system with full context ├── Subtasks ← 1 level deep max ├── Dependencies ← live-validated links └── Assets ← docs, images, audio, code, audit log
A block is a system. It has a title, a one-line brief, extended notes, priority, hours estimate, category, dependency links, subtasks, and a full asset library. When you drag it to Done — all of that travels with it.
Staging → Board → Archive
Staging — new blocks land here by default. Use it to brain-dump ideas without committing them to a lane. Drag pills into a lane when ready, or send them back.
Board — Kanban lanes: Planned → In Progress → Done. Drag blocks between lanes. Status updates automatically and an audit entry is written.
Tree — full workspace hierarchy in an expandable tree. All projects and blocks at once. Click any node to open its system panel.
Archive — blocks retired with a sign-off reason. Fully restorable. Every archived block keeps its full context indefinitely.
The Agent Loop
1File → Agent Bundle v2 — exports a ZIP: workspace, clean template, schema contract, instructions, and a project summary
2Open the ZIP — paste agent_instructions.md and agent_blocks_t2.json into Claude. Text assets are embedded directly in the bundle.
3Claude returns a Tier 2 JSON block array — structured, schema-valid, ready to import
4File → Import JSON — drop or paste the JSON. Blocks populate the board instantly. Pending blocks land in Staging for you to triage.
5Review, edit, drag — refine priorities, restructure, promote subtasks, add files
6Export a new bundle — the loop repeats. Each cycle the agent sees more context, more history, more decisions.
The System Panel
Click on any block to open its system panel — the full view of a block as a knowledge node. Priority bar, tags, brief, notes (markdown rendered), dependency pills (live-validated), subtask list with progress, and the full asset library.
The panel auto-widens when binary files are attached — giving the asset viewer proper room. The ⊞ Explore button opens a full-screen file browser for the block — all files in a sidebar, full preview on the right.
Footer actions: Edit Fields · Copy JSON · Copy Agent Prompt · Mark Done · Archive. All non-destructive. Archive requires a sign-off reason.
File Attachments
Every block can hold real files — not just text. Attach PDF, DOCX, images, audio, JS, JSON, markdown, HTML — all stored with the block and travel with it in exports.
⬆ Attach file opens the file picker (or drop directly onto the asset area). Size limits: 2MB per file, 5MB total per block. The panel shows total usage.
⤢ expand opens the active file fullscreen. ⊞ explore opens the full file browser. Every file has a ⬇ Download button — even JS and HTML which are downloaded via Blob URL to bypass browser security restrictions.
Sessions & Exports
Auto-save — every action saves to localStorage instantly. You never lose work mid-session.
Save Project (.zip) — portable ZIP for the current project. Open it back in any browser session to continue exactly where you left off.
Save Workspace (.zip) — full multi-project ZIP. All projects, all blocks, all assets.
Branch Zip — export a single block and all its context as a standalone ZIP. Hand off exactly one system to an agent, nothing else.
Agent Bundle v2 — the complete agent handoff package. Binary assets excluded from the template (token-efficient) but included in workspace.json.
Block Fields
FieldPurposeNotes
titleBlock name — shown everywhereRequired
briefOne-line system descriptionShown on card below title
notesExtended context, markdown supportedShown in system panel
statuspending · planned · in progress · done · archiveControls lane placement
prioritycritical · high · medium · lowColours left border of card
hoursEffort estimateMust be numeric
categoryDomain label — freeforme.g. core, ui, audio, docs
systemcore · new · ui · ux · etc.Coloured system type tag on card
dependenciesNames of prerequisite blocksLive-validated — dims if not found
childrenSubtasks — 1 level deep maxEach has title, priority, hours, status
assetsNamed files per blockMD, HTML, PDF, DOCX, IMG, audio, code
Status Values
StatusWhere it appearsNotes
pendingStaging strip above boardDefault for new blocks — awaiting triage
planned (todo)Planned laneReady to work on
doingIn Progress laneCurrently active
doneDone laneCompleted
archiveArchive stripRetired — requires sign-off reason
Priority Guide
PriorityCard borderUse for
criticalcoralBlockers and foundations — nothing else proceeds without this
highamberCore systems — important, next in line
mediumcyanNormal planned work
lowdimNice-to-have, backlog items
File Menu Actions
ActionWhat it does
New ProjectCreates a new empty project and switches to it
Open Project (.zip)Loads a project ZIP — restores workspace and all assets
Import JSONPaste or drop JSON — string list, block array, or full workspace (Tier 1/2/3)
Save Project (.zip)Exports current project as a ZIP with all blocks, assets, and docs
Save Workspace (.zip)Exports ALL projects as a full ecosystem ZIP
Export JSONCurrent project as a workspace JSON file
Agent Bundle v2Full agent handoff ZIP: workspace + template + contract + instructions + summary
Load DemoLoads the built-in demo project — Ashlight Task Composer itself
JSON Import Tiers
Tier 1 — String list: ["Block A", "Block B"] — fastest seed, creates bare blocks with default fields.
Tier 2 — Block array: Full block objects with all fields. Recommended for agent output. Blocks with status: "pending" land in Staging.
Tier 3 — Full workspace: Object with type: "ashlight.task.workspace" — shows confirmation modal: Add as Projects (safe default) or Replace All.
All tiers accept file drop (.json) as well as paste. Invalid JSON shows a toast error and does nothing destructive.
Drag & Drop
ActionResult
Drag block top edge → releaseInsert before that block
Drag block bottom edge → releaseInsert after that block
Drag block middle → releaseNest as subtask of that block
Drag block to empty lane areaChange status to that lane
Drag staging pill to laneMove from Staging → that lane
Drag lane block to Staging stripMove back to Staging (pending)
Drag subtask to lanePromote to root block with that status
Keyboard Shortcuts
KeyAction
EscapeClose fullscreen → settings → modal → system panel (priority order)
Cmd/Ctrl + EnterSave the open modal form
⚙ Settings
Export
View
System
Attachment
◈ Console 0 entries

⬇ Export Agent Bundle

Select Projects
Options
⊞ File Explorer
DROP .json or .zip
workspace · project array · block array · string list · agent bundle

⬆ Import Workspace

◈ ASHLIGHT
Welcome Experience
your project notes right now
→ finish the HUD thing (urgent!!) talk to Sarah about the inventory bug fix the login flow — blocked on entity layer // need to do the entity layer before anything else → asset pipeline blocking 3 other systems update the docs // Sarah: "what's the priority order again?" need to schedule the UI sprint before Thursday // agent has no idea where to start with this
Your chaos becomes a
structured system
in seconds.
Before
Scattered notes. No priorities. Your agent guesses. Work gets duplicated. Nothing ships on time.
After
Every task is a structured block. Priorities clear. Dependencies mapped. Your agent knows exactly what to build next.
priorities automatic dependencies mapped agent-ready output hours estimated audit trail built-in
ashlight_bundle_MyProject_2026-04-04.zip AGENT BUNDLE
workspace.json full project state
agent_blocks_t2.json AI reads this
json_contract.md schema rules
AGENT_INSTRUCTIONS.md loop protocol
blocks/ — per-block packages with assets
Your prompt to Claude / GPT
"Here is my project bundle. Read
json_contract.md for the schema,
agent_blocks_t2.json for project context.

I need to plan our new inventory system.
Break it into blocks with priorities,
hours, subtasks and dependencies.

Return valid Ashlight block JSON only."
Agent response — schema-valid, ready to import


"title" "Inventory Core"
"priority" "critical" "hours" 8 "status" "todo"
"dependencies""Entity Layer"
"notes" "Stock DB, CRUD layer, cache strategy"
"children""title""DB schema""hours"2

 // ... 11 more blocks, fully structured
Drop. Smart Merge.
Drop a .json block array — the Diff engine merges it. Drop a .zip agent bundle — the project modal opens. The right thing happens automatically.
⬆ Drop .json or .zip here
workspace · agent bundle · block array · string list
● Planned
Inventory Core
8h · critical · 4 subtasks
UI Components
4h · medium
API Layer
6h · high
● In Progress
Entity Layer
5h · high · blocks 3 others
Auth System
3h · medium
● Done
DB Schema
2h · done
Data Models
3h · done
Dev Environment
1h · done
BOARD
Inventory Core
8h · 4 subtasks
Entity Layer
Inventory Core
Tags
critical8hcore
Notes
Stock DB schema, CRUD layer, caching strategy. Redis preferred.
Dependencies
Entity Layer
Subtasks — 4 tasks
DB schema · CRUD ops · Cache layer · API contracts
Inventory Core — attached documents
Handover Notes
API Spec
Audit Log
## Handover Notes
Inventory core handles all stock CRUD operations.
Auth token required on all endpoints — see API Spec.
Cache TTL: 300s. Redis preferred, falls back to memory.
● 04 Apr 10:05 · Status → done  ·  ● 03 Apr 14:22 · Asset added: Handover
1
Describe your project to an AI agent + bundle
2
Agent returns fully structured JSON — blocks, subtasks, priorities, hours
3
Drop it in — board populates instantly
4
Review, edit, attach docs, move blocks, track progress
5
Export new bundle → agent gets smarter → repeat
Step 1 of 10
◈ Demo Mode
Explore the demo project freely — drag blocks, open the system panel, try the file menu.
Step 1 of 4