Skip to content

My Workplace: a team chat of AI teammates (starter kit) - #36

Merged
richard-epsilla merged 13 commits into
mainfrom
kit-workplace
Oct 1, 2026
Merged

richard-epsilla merged 13 commits into
mainfrom
kit-workplace

Conversation

@richard-epsilla

@richard-epsilla richard-epsilla commented Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

A team chat where every teammate is an AI agent with its own face and its own job. A recruiter Harness interviews you (JSON questionnaires rendered as multiple choice) and the app installs the teammate it designs as a Harness of its own. Message a teammate one to one in a conversation it remembers, or put several in a group where they answer when it is their turn, hand work to each other with @mentions, browse the web in front of you, and leave what they make in a shared library.

A group at work: the strategist's brief handed to the copywriter, the designer and the social manager, their files in the details rail

How a group answers. The group document (group.json in a recruiter session) says who still owes the room a turn: the mentioned first, then everyone else judges with [skip], a reply's mentions pull others in up to three hops. Whichever window has the group open runs those turns; a window that closes or reloads mid-turn hands the room over after a minute, and the next one reads the finished reply back from the teammate's session and continues. Every turn carries the roster with each teammate's role and expertise, so work goes to the role it fits; files colleagues shared arrive under shared/ in the teammate's working directory. Other windows follow a running turn on the Harness event stream, so the teammate's tools and text show everywhere as they happen.

The library: every file the team made, with who made it and where, searchable, previewed in place

Hiring: the recruiter's questionnaire

Recommended pairing: DeepSeek Harness with Claude Sonnet 5.5 (then Claude Code with Sonnet 5.5, Codex with gpt-5.4, Hermes with deepseek-v4-pro). A fresh workspace gets its browser plug connected at the first hire.

Verified end to end on hr-test with headless Playwright: a new workspace, launch from the Kits page, four teammates hired through the questionnaire, one group, a launch campaign for a client run in it (brief, LinkedIn post and email, two PNG images, X thread and posting schedule, a review pack) in 8 minutes on DeepSeek Harness + Sonnet 5.5; a window reloaded mid-turn recovered the reply and ran the follow-ups; a second window showed the turns live; spreadsheets, Markdown, code and HTML preview in the pane; four widths. The gateway fix the first round found landed separately (HarnessRouter/harnessrouter#347); the card's cover is HarnessRouter/harnessrouter#348.

🤖 Generated with Claude Code

richard-epsilla and others added 13 commits September 30, 2026 04:14
…ct messages, groups with turn-taking and @mentions, artifacts)

A team chat where every teammate is an AI agent: a recruiter Harness interviews the person
(JSON questionnaire rendered as multiple choice) and the app installs the teammate it designs
as its own Harness with the teammate package. Direct messages are one session per person per
teammate; a group is one session on the recruiter whose group.json holds the roster, the
transcript and each teammate's cursor, with the posting tab running the replies: mentioned
teammates first, everyone else judges relevance with [skip], replies that @mention pull others
in up to three hops. The browser a teammate opens shows live in the rail; files are artifacts
per conversation and in one library. Twelve drawn faces ship with the kit.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…om, a direct message keeps its name after the first turn, artifacts settle and refresh, the rail closes on a narrow window, the library stops reloading on every poll

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…s finish renames it after the message it answered

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…he moment the page loaded

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…nd the example pills start the interview; a slow recruiter says so

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…, a soft grey room list with previews, black and grey bubbles, a pill composer, white cards in the panel, a face-first hiring screen); the app scopes its calls to the console's active workspace and picks that workspace's recruiter; one answer is enough to continue the interview

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…rary is a grid of previews with makers and opens the shared viewer in a sheet; the questionnaire keeps an even rhythm; an open conversation reads the server every three seconds so a message from another window shows at once; reifyui 0.13.5 gives an HTML artifact a Preview | Source switch

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…er's roles and files, and a fresh workspace gets its browser

The group's turn-taking is derived from the document (who has read what, who is typing, who holds
the round) instead of the posting tab's memory: a tab that reloads or closes mid-turn hands the
room to the next one after a minute, which reads back the reply the vanished tab never wrote (the
turn ran on in the teammate's session) and continues with whoever still owes an answer. A refresh
had lost a finished launch plan and nobody followed it up. Watching windows follow a running turn
on the Harness event stream, keep the bubble until the reply is in the room, and the driver keeps
the typing mark fresh for long turns. Every turn carries the roster with roles and expertise and
the rule to hand work to the role it fits; files other teammates shared arrive under shared/ and
the library lists them once. Hiring connects the browser plug for a workspace that lacks it.
Spreadsheets preview in the viewer. Artifacts page has a search box; rails show the same cards;
the browser card keeps a minimum height. DeepSeek harness + Claude Sonnet 5.5 is the first
recommended pairing.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ed for again; README describes the resumable room

Sonnet 5.5 on the DeepSeek harness once closed the profile object with a dangling comma and quote;
the page showed 'cannot draw' for a valid profile. The parser repairs that tail, and a reply that
still does not parse is asked for once more before the person sees anything.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…te is refused at the reveal

A fourth hire came back as a second Marlowe: two teammates with one name share one @handle.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…and the library

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@richard-epsilla
richard-epsilla marked this pull request as ready for review October 1, 2026 15:30
@richard-epsilla
richard-epsilla merged commit f5eb9e4 into main Oct 1, 2026
@richard-epsilla
richard-epsilla deleted the kit-workplace branch October 1, 2026 15:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant