CICERO YANG / INDEPENDENT BUILDER
MAKE THE
COMPLEX
CLICK.
I build tools that make agents easier to understand, debug, and trust. Non-STEM background. A few years directing stages. Still curious about what happens backstage.
EXPLORE MY WORK ENTER FIELDSAME NAME.
NOT THE SAME.
identity: Aidentity: Bregistry.get(hostKey)undefinedIDENTITY MISMATCHReal JavaScript. An isolated identity demo, not a live Harness run or a complete upstream fix.
THE DISCUSSIONMAKING AGENTS LEGIBLE
It runs.
But why?
What did the agent read? Which runtime did it load? What actually happened? I build small tools around these questions and discuss the rough edges in DeepSeek Harness.
Did the agent read the rules we meant?
Maps the declared instruction chain and keeps unresolved boundaries visible.
- model.scope
- declared chain
- uncertainty
- visible
- whole_prompt
- unclaimed
Scope & limits
The lens models the declared instruction chain and intended precedence. It keeps unresolved boundaries visible; it does not claim to reproduce every token in the model’s actual prompt.
- DISCUSSIONNode floor propagation proposal
Does a valid manifest prove the runtime?
Scaffolds the declared plugin boundary without adding a runtime dependency.
- manifest
- valid
- runtime.skill
- declared
- build.step
- none
Scope & limits
The starter connects a host plugin, tool, runtime skill, tests, and CI at the declaration boundary. A valid manifest still needs runtime verification; scaffolding alone cannot guarantee that a plugin works.
- DISCUSSIONTwo-registry failure mechanism
Can the same symbol belong to two runtimes?
Checks versions, profiles, logs, ports, and duplicate packages from one command.
- versions + profiles
- inspect
- runtime.packages
- detect duplicates
- logs + ports
- diagnostic clues
- fix.scope
- diagnose, not auto-fix
Scope & limits
In the linked failure mechanism, a plugin registers with the Symbol from package copy B while the dispatcher looks up with copy A. Matching descriptions do not mean matching identities. The experiment above isolates that property; dsh-doctor gathers diagnostic clues, not universal fixes.
- DISCUSSIONDiagnostic vocabulary informing this model
Which path is observed—and which is reconstructed?
Turns observable session metadata, tool events, errors, tokens, and frames into one offline trace.
- data.scope
- observable session
- session.evidence
- tools + errors
- claim.boundary
- explicit
Scope & limits
dsh-trajectory works with observable session metadata, per-turn tool calls and errors, token ledgers, and frame decoding. Those observations are not a recording of internal package installation, module resolution, or registry operations.
What conclusion can the evidence carry?
Turns a session into a report and handoff without letting narrative outrun evidence.
- input
- session evidence
- output
- report + handoff
- unknowns
- kept explicit
- verification
- actual host required
Scope & limits
The report should retain what was observed, what remains uncertain, and what the next person can verify. A report is not proof of a fix. In the identity case, options such as deduplication, Symbol.for, and loader guarantees still require verification in the actual host.
Links lead to my repositories and public discussion contributions. Proposals and replies are not claims of upstream adoption or merged changes.
- TEAM MEMBERS
- 50+
- PERFORMANCES
- 12
- ATTENDANCES
- 5,000+
A DIFFERENT WAY IN
First, the stage.
Then, the
tools.
My first complex system was a theatre production: actors, rehearsals, stage cues, and a curtain that had to go up on time. I led a 50+ person team through 12 campus performances.
That background still shapes how I build: make the moving parts visible, keep handoffs clear, and leave room for people to do their best work.
Shanghai University of International Business and Economics2023 — 2027