Brief a coach on a team
The coach is signed in with their own Antasphere account; the
CLI does every read and prints
JSON with
. This skill sequences the reads and writes the summary. It never posts, claims or
resolves anything: that is the
skill, on the coach's word. Where a step says ASK, ask the coach
and wait.
A refusal is
{ "ok": false, "error": { "code", "message" } }
with an exit code: 2 a flag is wrong,
3 access (a sign-in to do, not on the roster, no event), 1 another refusal the message names. Never retry
in a loop.
1. Sign in and the event's workspace (once per machine)
bash
npm i -g @antasphere/hackathon@latest
hackathon --version
hackathon connect --json
-
Exit 3 saying to run
:
is interactive (the Antasphere email, then the
code mailed to it). ASK the coach to run it in a terminal of their own, with the email the organizers
put on the roster, and to tell you when it printed
. Then
again.
-
or "no access to Antasphere Hackathon": the organizers must add the coach's email.
Say so and stop.
-
: the account may be in several workspaces and this one holds no event. List
them and pick the event's:
bash
hackathon workspaces --json # { workspaces: [{ id, name, … }], selectedWorkspaceId }
hackathon workspace use <id-or-name> # every later command runs there
hackathon connect --json
ASK which one when several could be the event's; never guess.
Read
in the connect answer.
(a coach) or
: go on.
:
this is not a coach account, point to the
skill and stop.
: the jury does not read the chats;
stop.
is expected for a coach: a coach has no team app to set up.
2. The event and the teams
bash
hackathon event status --json
hackathon chats list --json
hackathon decks gallery --json
- From : , , (the build end plus the grace), the
event's , and
event.github.organization
and event.github.designatedBranch
(where the team
repositories live and the branch that counts). A coach's status lists no team: the teams come from the
two reads below.
- From : with are the teams ( is the team, its
id, the team chat's channel id); are the help request threads ( names
the team).
- From : , one per team: , (what the team
says it builds), , and / (the demo deck and the
presentation, Slideless share links, null until the team sets them).
No team named: give one line per team (name, description, members, open requests count from step 4) and
ASK which one to brief. Match the team the coach names case-blind against
; several match, ASK.
3. The team's chat, threads included
bash
hackathon chats read <teamChannelId> --limit 100 --json
is newest first, with
,
(
,
,
),
,
, and on a thread's first post
. Follow
(
) while the posts are from the last six hours, then stop. For every post with
above 0:
bash
hackathon chats replies <teamChannelId> <postId> --limit 100 --json # oldest first
came after the CLI 0.7.1. If it answers "unknown command", update the CLI
(
npm i -g @antasphere/hackathon@latest
); if it is still unknown, say the thread replies are on the
dashboard's Chats page and go on without them.
4. The team's help requests
bash
hackathon requests list --limit 100 --json
Keep the
whose
is the team's. Each has
,
,
,
(
,
,
),
,
,
, and
, its thread:
bash
hackathon chats read <request.channelId> --limit 100 --json
Read every open and claimed request's thread; a resolved one only when it is from the last two hours.
5. The repository
A coach reads every team repository: the organizers' provisioning invites every coach whose GitHub
username is on the roster, with read access. Nothing on the platform names a team's repository to a
coach; GitHub does. The repository is
<organization>/<event>-<team>
, the team's name lower-cased,
accents dropped, every run of spaces or signs turned into one hyphen (a team "Night Owls" →
).
ASK the local folder once and propose
~/Antasphere/hackathon-coach/
; each team goes in its own
subfolder named like the repository.
With the GitHub CLI (
answers):
bash
gh api /user/repository_invitations --jq '.[] | {id, repo: .repository.full_name}'
gh repo list <organization> --limit 200 --json name,url
- A pending invitation for a repository of the event's organization: ASK the coach before accepting
(it acts on their GitHub account), then
gh api --method PATCH /user/repository_invitations/<id>
for
each one they OK.
- The team's repository is the one of whose name ends with .
Without
: the invitations wait on
https://github.com/notifications (and by email); ASK the coach to
accept them, then try the name above with
git ls-remote https://github.com/<organization>/<name>.git
.
No invitation and no access at all: the roster has no GitHub username for the coach, or the organizers
have not run the provisioning since the coach was added. Say so: an organizer adds the username (Add
advisor, or the roster import) and presses Check again on the Admin page. Go on without the code.
Clone or update, never anything else:
bash
git clone https://github.com/<organization>/<repo>.git <folder>/<repo> # first time
git -C <folder>/<repo> pull --ff-only # afterwards
git -C <folder>/<repo> log origin/<designatedBranch> -n 30 --date=iso --format='%h %ad %an %s'
The log on the designated branch is what the team pushed; the platform counts the last push it received
before
. A coach cannot read the platform's receipts (the submissions are the team's and
the organizers'); an organizer running this skill may add
hackathon submissions show <team> --json
(the last received revision, the frozen evidence).
6. The summary
Read the repository's
,
, the manifest files (
,
,
,
,
,
,
) and
the last commits' diffs (
git -C <dir> show --stat HEAD~5..HEAD
). Then write, short:
- What they build: one or two sentences, from the description, the README and the code.
- Stack: languages, frameworks, services, how it runs.
- Where they are: the last pushes (count, last one's time against the freeze), what works.
- Where they are stuck: open and claimed requests (title, who claimed it, age), the questions left
unanswered in the chat, errors quoted in the threads.
- What they asked: each request in one line, and what the thread already tried.
- Links: the demo deck and the presentation (or "not set yet"), the clone's folder.
End with the next move: the
skill to answer a request.
Never
- Never post, claim, unclaim, resolve or reopen here.
- Never push, never commit in a team's clone, never or delete a clone:
only. A coach suggests a change in a reply; the team pushes it.
- Never pass a credential to a command, never print a , never paste a secret found in a repository
into a summary: name the file and tell the coach to tell the team.
- Never read or summarize a team the coach did not ask about, beyond the one-line overview.