@jinion/cli 0.5.655 → 0.6.760

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,33 @@
1
1
  # @jinion/cli
2
2
 
3
+ ## 0.6.760
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [b8db0ed]
8
+ - @jinion/core@0.5.2
9
+ - @jinion/tui@0.0.8
10
+
11
+ ## 0.6.751
12
+
13
+ ### Patch Changes
14
+
15
+ - 3659a2d: Agents keep to the team's decisions that bind their work: they are told them nearest to the work first, look them up with `find_decisions`, name the teammate whose decision they kept to, ask before going against one and supersede it once told to, and `review_turn` names a change that goes against one and warns of a teammate's decision on another branch that touches the same files.
16
+ - ace5a70: In a project linked to a team, agents on Claude and Codex record the decisions that matter with `record_decision`, each shown in the conversation and deletable by its author; Jinion keeps a copy of the project's decisions on the machine, sends what was recorded offline once it can, and deletes the copy when the user loses access.
17
+ - c732a8f: Each session sorts the project's decisions by what the HEAD of its folder has: binding once a commit it has carries one, waiting to be pulled, on another branch, or dropped; a draft anchors itself to the commit that carries it, made in Jinion or in the user's own terminal.
18
+ - 5026875: A conversation open in the terminal can be taken over from another Jinion, such as the desktop app: its turn stops where it is, it is saved, and it goes on there.
19
+ - 6d921ec: Team decisions show in both apps: each one the agent recorded is a line in its turn that opens to what, why and what was turned down, beside one it kept to and a teammate's on another branch that the turn's files meet. `/decisions` and the desktop's Decisions page group them as your branch sees them (in your code, not pulled yet, on other branches, yours not committed yet); `/link` and the same page link a repository to a team or ask to join one, and the status line and title bar say which team the repository belongs to.
20
+ - d31491b: Jinion reads a repository's jinion.config.json and knows whether its user is in the team's workspace, waiting for access, or out; clients link a repository to a project and ask for access through the API.
21
+ - Updated dependencies [3659a2d]
22
+ - Updated dependencies [ace5a70]
23
+ - Updated dependencies [c732a8f]
24
+ - Updated dependencies [5026875]
25
+ - Updated dependencies [5218624]
26
+ - Updated dependencies [6d921ec]
27
+ - Updated dependencies [d31491b]
28
+ - Updated dependencies [06187b2]
29
+ - @jinion/core@0.5.1
30
+
3
31
  ## 0.5.655
4
32
 
5
33
  ### Minor Changes
package/dist/app/app.js CHANGED
@@ -16,6 +16,7 @@ import { ApiContext, createApi } from './api.js';
16
16
  import { Aside } from './aside.js';
17
17
  import { useAnnouncements } from './announcements.js';
18
18
  import { useClaudeNotes } from './claude-notes.js';
19
+ import { useTeamNotice } from './team-notice.js';
19
20
  import { useDialogs } from './dialogs.js';
20
21
  import { useKeys } from './keys.js';
21
22
  import { PromptArea } from './prompt-area.js';
@@ -83,6 +84,7 @@ function Layout({ offerTerminalSetup }) {
83
84
  useDialogs();
84
85
  useAnnouncements();
85
86
  useClaudeNotes();
87
+ useTeamNotice();
86
88
  useUpdates();
87
89
  const sidebar = useSidebar();
88
90
  const openView = useOpenView();
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/app/app.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/app/app.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { useAtomValue } from 'jotai';
2
+ import { useEffect, useRef } from 'react';
3
+ import { teamAtom } from '../state/session.js';
4
+ import { useApi } from './api.js';
5
+ /** Once a run: a linked repository whose team the user isn't in says so, with how to ask. */
6
+ export function useTeamNotice() {
7
+ const api = useApi();
8
+ const team = useAtomValue(teamAtom);
9
+ const told = useRef(false);
10
+ useEffect(() => {
11
+ if (told.current)
12
+ return;
13
+ const text = team?.state === 'no-access'
14
+ ? `This project belongs to ${team.workspace.name}. Ask to join with /link, or on cloud.jinion.co.`
15
+ : team?.state === 'mismatch'
16
+ ? 'This repository’s jinion.config.json belongs to another repository, so its team’s decisions aren’t shared here.'
17
+ : undefined;
18
+ if (!text)
19
+ return;
20
+ told.current = true;
21
+ api.act(api.inSession('session/notice', { text, tone: 'warning' }));
22
+ }, [team?.state]);
23
+ }
24
+ //# sourceMappingURL=team-notice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"team-notice.js","sourceRoot":"","sources":["../../src/app/team-notice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,6FAA6F;AAC7F,MAAM,UAAU,aAAa;IAC3B,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;IACrB,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE3B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QAEzB,MAAM,IAAI,GACR,IAAI,EAAE,KAAK,KAAK,WAAW;YACzB,CAAC,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,IAAI,kDAAkD;YAClG,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK,UAAU;gBAC1B,CAAC,CAAC,iHAAiH;gBACnH,CAAC,CAAC,SAAS,CAAC;QAElB,IAAI,CAAC,IAAI;YAAE,OAAO;QAElB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACtE,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;AACpB,CAAC"}
package/dist/app/views.js CHANGED
@@ -1,8 +1,10 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { AccountPicker } from '../panels/account/account-picker.js';
3
3
  import { ContextPanel } from '../panels/context.js';
4
+ import { DecisionsPanel } from '../panels/decisions.js';
4
5
  import { DiffPanel } from '../panels/diff/diff-panel.js';
5
6
  import { HelpPanel } from '../panels/help.js';
7
+ import { LinkPanel } from '../panels/link.js';
6
8
  import { McpPanel } from '../panels/mcp.js';
7
9
  import { MemoryPanel } from '../panels/memory.js';
8
10
  import { ModePicker } from '../panels/mode.js';
@@ -18,7 +20,7 @@ import { TasksPanel } from '../panels/tasks/tasks-panel.js';
18
20
  import { TerminalSetupPanel } from '../panels/terminal-setup.js';
19
21
  import { UsagePanel } from '../panels/usage/usage-panel.js';
20
22
  import { useApi } from './api.js';
21
- const FULLSCREEN = new Set(['resume', 'diff', 'usage']);
23
+ const FULLSCREEN = new Set(['resume', 'diff', 'usage', 'decisions']);
22
24
  export const viewPanel = (view) => ({
23
25
  id: view.id,
24
26
  placement: FULLSCREEN.has(view.id) ? 'fullscreen' : 'bottom',
@@ -63,6 +65,10 @@ function ViewPanel({ view }) {
63
65
  return _jsx(MapPanel, {});
64
66
  case 'release-notes':
65
67
  return _jsx(ReleaseNotesPanel, {});
68
+ case 'decisions':
69
+ return _jsx(DecisionsPanel, {});
70
+ case 'link':
71
+ return _jsx(LinkPanel, {});
66
72
  }
67
73
  }
68
74
  //# sourceMappingURL=views.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"views.js","sourceRoot":"","sources":["../../src/app/views.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"views.js","sourceRoot":"","sources":["../../src/app/views.tsx"],"names":[],"mappings":"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"}
package/dist/link.js ADDED
@@ -0,0 +1,83 @@
1
+ import { createInterface } from 'node:readline/promises';
2
+ import { JinionClient } from '@jinion/core/api/client';
3
+ import { errorMessage } from '@jinion/core/lib/errors';
4
+ /**
5
+ * `jinion link`: what /link does, without opening the app, for setting a repository up from a script or a README. In a
6
+ * terminal it asks which workspace and project; elsewhere it takes the only one there is, or says why it can't.
7
+ */
8
+ export async function link(connect, version) {
9
+ const client = new JinionClient(connect(), {
10
+ name: 'jinion link',
11
+ version,
12
+ notifications: 'bell',
13
+ terminal: false,
14
+ screen: { view: () => { }, fillPrompt: () => { }, notify: () => { }, expand: () => { }, exit: () => { } },
15
+ });
16
+ await client.initialize();
17
+ try {
18
+ const team = await client.request('team/state', {});
19
+ switch (team.state) {
20
+ case 'member':
21
+ return said(`This repository is linked to ${team.workspace.name} / ${team.project.name} already.`);
22
+ case 'requested':
23
+ return said(`You asked to join ${team.workspace.name}; you’ll get an email when an admin lets you in.`);
24
+ case 'no-access':
25
+ return said(`This project belongs to ${team.workspace.name}. Ask to join with /link in jinion, or on cloud.jinion.co.`);
26
+ case 'signed-out':
27
+ return failed('Sign in to Jinion first: run jinion and follow its sign-in.');
28
+ case 'invalid':
29
+ return failed(`This repository’s jinion.config.json can’t be read: ${team.problem}`);
30
+ case 'offline':
31
+ return failed('Jinion can’t be reached right now. Try again in a moment.');
32
+ }
33
+ const { workspaces, consent } = await client.request('team/workspaces', {});
34
+ if (workspaces.length === 0)
35
+ return failed('You aren’t in a workspace yet. Create one on cloud.jinion.co, then run jinion link again.');
36
+ const workspace = await choose('Which workspace?', workspaces.map((each) => ({ id: each.id, label: each.name })));
37
+ const projects = await client.request('team/projects', { workspace: workspace.id });
38
+ const project = await choose(`Which of ${workspace.label}’s projects is this repository?`, [
39
+ { label: 'A new project for this repository' },
40
+ ...projects.map((each) => ({ id: each.id, label: `${each.name} (${each.remoteUrl})` })),
41
+ ]);
42
+ console.log(consent);
43
+ const linked = await client.request('team/link', { workspace: workspace.id, ...(project.id && { project: project.id }) });
44
+ return said(`Linked to ${workspace.label} / ${linked.project.name}. Wrote ${linked.path}; commit it so your team links too.`);
45
+ }
46
+ catch (error) {
47
+ return failed(errorMessage(error));
48
+ }
49
+ finally {
50
+ client.close();
51
+ }
52
+ }
53
+ /** The only option there is; otherwise the one the user types the number of, in a terminal. */
54
+ async function choose(question, options) {
55
+ if (options.length === 1)
56
+ return options[0];
57
+ if (!process.stdin.isTTY)
58
+ throw new Error(`${question} There are several, so run jinion link in a terminal to pick one, or /link in jinion.`);
59
+ const ask = createInterface({ input: process.stdin, output: process.stdout });
60
+ try {
61
+ console.log(question);
62
+ for (const [index, option] of options.entries())
63
+ console.log(` ${index + 1}. ${option.label}`);
64
+ for (;;) {
65
+ const picked = options[Number((await ask.question('Number: ')).trim()) - 1];
66
+ if (picked)
67
+ return picked;
68
+ console.log(`Type a number from 1 to ${options.length}.`);
69
+ }
70
+ }
71
+ finally {
72
+ ask.close();
73
+ }
74
+ }
75
+ function said(text) {
76
+ console.log(text);
77
+ return 0;
78
+ }
79
+ function failed(text) {
80
+ console.error(text);
81
+ return 1;
82
+ }
83
+ //# sourceMappingURL=link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link.js","sourceRoot":"","sources":["../src/link.ts"],"names":[],"mappings":"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"}
package/dist/main.js CHANGED
@@ -7,6 +7,7 @@ import { connectWebSocket } from '@jinion/core/api/websocket';
7
7
  import { coreOptions, startCore } from '@jinion/core/host';
8
8
  import { App } from './app/app.js';
9
9
  import { updatedSinceLastRun } from './app/release-notes.js';
10
+ import { link } from './link.js';
10
11
  import { serve } from './serve.js';
11
12
  import { inAppleTerminal, offeredTerminalSetup, profilesWithoutMeta } from './terminal/apple-terminal.js';
12
13
  const { version } = createRequire(import.meta.url)('../package.json');
@@ -14,6 +15,7 @@ const USAGE = `jinion ${version}
14
15
 
15
16
  Usage: jinion [options]
16
17
  jinion serve [--port <port>] [--stdio] [--origin <origin>]...
18
+ jinion link
17
19
 
18
20
  Options:
19
21
  -c, --continue Continue the last conversation in this directory
@@ -30,7 +32,10 @@ jinion serve runs jinion without a screen, for other apps to drive over its API:
30
32
  machine, with a token only you can read, or over stdin and stdout with --stdio.
31
33
  --port <port> The port to serve on; a free one when left out
32
34
  --stdio Serve the process that started this one, over stdin and stdout
33
- --origin <origin> A web page let in, e.g. a desktop app's; repeat for several`;
35
+ --origin <origin> A web page let in, e.g. a desktop app's; repeat for several
36
+
37
+ jinion link shares this repository's decisions with a team on cloud.jinion.co, as /link does: it asks which
38
+ workspace and project in a terminal, and writes jinion.config.json for you to commit.`;
34
39
  const { values, positionals } = parseArgs({
35
40
  allowPositionals: true,
36
41
  options: {
@@ -57,7 +62,7 @@ if (values.version) {
57
62
  process.exit(0);
58
63
  }
59
64
  const [command, ...rest] = positionals;
60
- if ((command !== undefined && command !== 'serve') || rest.length > 0)
65
+ if ((command !== undefined && command !== 'serve' && command !== 'link') || rest.length > 0)
61
66
  fail(`Unknown command "${positionals.join(' ')}". jinion --help lists what there is.`);
62
67
  const theme = values.theme ?? process.env.JINION_THEME;
63
68
  if (theme !== undefined && theme !== 'light' && theme !== 'dark')
@@ -101,6 +106,12 @@ const crashed = (error) => {
101
106
  };
102
107
  process.on('uncaughtException', crashed);
103
108
  process.on('unhandledRejection', crashed);
109
+ if (command === 'link') {
110
+ const code = await link(core.connect, version);
111
+ for (const backend of options.backends)
112
+ backend.close?.();
113
+ process.exit(code);
114
+ }
104
115
  if (command === 'serve') {
105
116
  await serve(core.server, { cwd, version, port, stdio: values.stdio, origins: values.origin });
106
117
  for (const backend of options.backends)
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { Box, ChoiceList, choiceIndent, Panel, Prose, Text, useChoiceList, useInput, usePanel, useTheme, useWindowSize } from '@jinion/tui';
4
+ import { useAtomValue } from 'jotai';
5
+ import { shortDate } from '@jinion/core/lib/format';
6
+ import { authorOf } from '@jinion/core/team/prompt';
7
+ import { useApi } from '../app/api.js';
8
+ import { decisionsAtom, jinionUserAtom, teamAtom } from '../state/session.js';
9
+ // The panel's title, hints and group names, around the rows it lists.
10
+ const CHROME_ROWS = 10;
11
+ const GROUPS = [
12
+ ['binding', 'In your code · your agents keep to these'],
13
+ ['not-pulled', 'Not pulled yet · run git pull to get them'],
14
+ ['other-branch', 'On other branches · agents don’t follow these'],
15
+ ['draft', 'Yours, not in a commit yet'],
16
+ ];
17
+ /** The team's decisions, as the branch this session works on sees them; yours can be deleted. */
18
+ export function DecisionsPanel() {
19
+ const api = useApi();
20
+ const theme = useTheme();
21
+ const { close } = usePanel();
22
+ const sorted = useAtomValue(decisionsAtom);
23
+ const team = useAtomValue(teamAtom);
24
+ const user = useAtomValue(jinionUserAtom);
25
+ const { rows } = useWindowSize();
26
+ const [open, setOpen] = useState();
27
+ const [deleting, setDeleting] = useState();
28
+ const shown = GROUPS.flatMap(([state]) => (sorted?.decisions ?? []).filter((decision) => decision.state === state));
29
+ const list = useChoiceList({
30
+ keys: shown.map((decision) => decision.id),
31
+ mode: 'single',
32
+ onCancel: close,
33
+ onSubmit: ([id]) => setOpen(open === id ? undefined : id),
34
+ });
35
+ const yours = (id) => shown.find((decision) => decision.id === id && (decision.state === 'draft' || decision.author?.id === user?.id));
36
+ useInput((input) => {
37
+ if (input !== 'd' || !yours(list.focus))
38
+ return setDeleting(undefined);
39
+ if (deleting !== list.focus)
40
+ return setDeleting(list.focus);
41
+ setDeleting(undefined);
42
+ api.act(api.request('team/delete-decision', { id: list.focus }));
43
+ });
44
+ const choices = shown.map((decision) => {
45
+ const request = decision.anchors.find((anchor) => anchor.pullRequest !== null);
46
+ const where = decision.state === 'other-branch' ? [decision.branch, request && `#${request.pullRequest} ${request.pullRequestState ?? 'open'}`].filter(Boolean).join(' · ') : '';
47
+ return {
48
+ key: decision.id,
49
+ group: GROUPS.find(([state]) => state === decision.state)?.[1],
50
+ label: decision.title,
51
+ aside: deleting === decision.id ? (_jsx(Text, { color: theme.error, children: "press d again to delete" })) : ([decision.state === 'draft' ? 'this branch' : authorOf(decision), where || shortDate(new Date(decision.createdAt))].join(' · ')),
52
+ editor: open === decision.id ? (_jsxs(Box, { flexDirection: "column", paddingLeft: choiceIndent(list), marginBottom: 1, children: [_jsx(Prose, { children: decision.decision }), _jsxs(Text, { children: [_jsx(Text, { color: theme.muted, children: "Why: " }), decision.reason] }), decision.turnedDown && (_jsxs(Text, { children: [_jsx(Text, { color: theme.muted, children: "Turned down: " }), decision.turnedDown] })), decision.paths.length > 0 && _jsx(Text, { color: theme.muted, children: decision.paths.join(', ') })] })) : undefined,
53
+ };
54
+ });
55
+ const linked = team?.state === 'member' ? `${team.workspace.name} / ${team.project.name}` : undefined;
56
+ return (_jsx(Panel, { title: "Decisions", subtitle: linked, hints: [
57
+ ['Enter', 'open'],
58
+ ['d', 'delete yours'],
59
+ ['Up/Down', 'move'],
60
+ ['Esc', 'close'],
61
+ ], children: sorted ? _jsx(ChoiceList, { list: list, choices: choices, limit: Math.max(4, rows - CHROME_ROWS), empty: "No decisions yet. Agents record them as your team works here." }) : _jsx(Text, { color: theme.muted, children: outside(team) }) }));
62
+ }
63
+ /** Why there are no decisions to show, and what to do about it. */
64
+ export function outside(team) {
65
+ switch (team?.state) {
66
+ case 'member':
67
+ return 'Reading your team’s decisions…';
68
+ case 'requested':
69
+ return `You asked to join ${team.workspace.name}. Its decisions show here once an admin lets you in.`;
70
+ case 'no-access':
71
+ return `This project belongs to ${team.workspace.name}. Ask to join with /link.`;
72
+ case 'signed-out':
73
+ return 'Sign in to Jinion to see this project’s team decisions.';
74
+ case 'mismatch':
75
+ return 'This repository’s jinion.config.json belongs to another repository, so its decisions aren’t shared here.';
76
+ case 'not-found':
77
+ return 'The project this jinion.config.json names isn’t there anymore, or you can’t see it.';
78
+ case 'invalid':
79
+ return `This jinion.config.json can’t be read: ${team.problem}`;
80
+ case 'offline':
81
+ return 'Jinion can’t be reached right now. Decisions show again once it can.';
82
+ default:
83
+ return 'This repository isn’t linked to a team. /link shares its decisions with one.';
84
+ }
85
+ }
86
+ //# sourceMappingURL=decisions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decisions.js","sourceRoot":"","sources":["../../src/panels/decisions.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,104 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { Box, ChoiceList, Panel, PromptInput, Text, useChoiceList, useInput, usePanel, useTheme } from '@jinion/tui';
4
+ import { useAtomValue } from 'jotai';
5
+ import { errorMessage } from '@jinion/core/lib/errors';
6
+ import { useApi } from '../app/api.js';
7
+ import { teamAtom } from '../state/session.js';
8
+ import { outside } from './decisions.js';
9
+ const NEW = 'new';
10
+ /** Links the repository to a team's project, or asks to join the one it is linked to, by what the team state says. */
11
+ export function LinkPanel() {
12
+ const team = useAtomValue(teamAtom);
13
+ if (team?.state === 'no-access' && team.canRequest)
14
+ return _jsx(AskPanel, { workspace: team.workspace.name });
15
+ if (team?.state === 'unlinked' || team?.state === 'not-found' || team?.state === 'mismatch')
16
+ return _jsx(ChoosePanel, {});
17
+ return _jsx(SaidPanel, { text: team?.state === 'member' ? `This repository is linked to ${team.workspace.name} / ${team.project.name}. /decisions shows its decisions.` : outside(team) });
18
+ }
19
+ function ChoosePanel() {
20
+ const api = useApi();
21
+ const theme = useTheme();
22
+ const { close } = usePanel();
23
+ const [step, setStep] = useState({ kind: 'loading' });
24
+ const failed = (error) => setStep({ kind: 'failed', problem: errorMessage(error) });
25
+ useEffect(() => {
26
+ api.request('team/workspaces', {}).then(({ workspaces, consent }) => setStep({ kind: 'workspace', workspaces, consent }), failed);
27
+ }, []);
28
+ const workspaces = step.kind === 'workspace' ? step.workspaces : [];
29
+ const projects = step.kind === 'project' ? step.projects : [];
30
+ const pickWorkspace = useChoiceList({
31
+ keys: workspaces.map((workspace) => workspace.id),
32
+ mode: 'single',
33
+ isActive: step.kind === 'workspace',
34
+ onCancel: close,
35
+ onSubmit: ([id]) => {
36
+ const workspace = workspaces.find((each) => each.id === id);
37
+ if (!workspace || step.kind !== 'workspace')
38
+ return;
39
+ const { consent } = step;
40
+ setStep({ kind: 'loading' });
41
+ api.request('team/projects', { workspace: workspace.id }).then((found) => setStep({ kind: 'project', workspace, projects: found, consent }), failed);
42
+ },
43
+ });
44
+ const pickProject = useChoiceList({
45
+ keys: [NEW, ...projects.map((project) => project.id)],
46
+ mode: 'single',
47
+ isActive: step.kind === 'project',
48
+ onCancel: close,
49
+ onSubmit: ([id]) => {
50
+ if (step.kind !== 'project')
51
+ return;
52
+ const { workspace } = step;
53
+ setStep({ kind: 'working' });
54
+ api.request('team/link', { workspace: workspace.id, ...(id !== NEW && { project: id }) }).then(({ project }) => {
55
+ close();
56
+ api.act(api.inSession('session/notice', {
57
+ text: `Linked to ${workspace.name} / ${project.name}. We wrote jinion.config.json at the repository’s root; commit it so your team links too.`,
58
+ tone: 'success',
59
+ }));
60
+ }, failed);
61
+ },
62
+ });
63
+ useInput((_, key) => {
64
+ if (key.escape)
65
+ close();
66
+ }, { isActive: step.kind !== 'workspace' && step.kind !== 'project' });
67
+ return (_jsxs(Panel, { title: "Link to a team", subtitle: "Share this repository\u2019s decisions", hints: hintsOf(step), children: [step.kind === 'loading' && _jsx(Text, { color: theme.muted, children: "Asking cloud.jinion.co\u2026" }), step.kind === 'working' && _jsx(Text, { color: theme.muted, children: "Linking\u2026" }), step.kind === 'failed' && _jsx(Text, { color: theme.error, children: step.problem }), step.kind === 'workspace' &&
68
+ (workspaces.length === 0 ? (_jsx(Text, { color: theme.muted, children: "You aren\u2019t in a workspace yet. Create one on cloud.jinion.co, then run /link again." })) : (_jsxs(_Fragment, { children: [_jsx(Text, { color: theme.muted, children: "Which workspace?" }), _jsx(ChoiceList, { list: pickWorkspace, limit: 8, choices: workspaces.map((workspace) => ({ key: workspace.id, label: workspace.name, aside: workspace.role })) })] }))), step.kind === 'project' && (_jsxs(_Fragment, { children: [_jsxs(Text, { color: theme.muted, children: ["Which of ", step.workspace.name, "\u2019s projects is this repository?"] }), _jsx(ChoiceList, { list: pickProject, limit: 8, choices: [
69
+ { key: NEW, label: 'A new project for this repository', description: 'Named after its folder; you can rename it on cloud.jinion.co' },
70
+ ...projects.map((project) => ({ key: project.id, label: project.name, aside: project.remoteUrl })),
71
+ ] }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: theme.muted, children: step.consent }) })] }))] }));
72
+ }
73
+ /** Someone outside the workspace asks its admins to let them in, with a note if they like. */
74
+ function AskPanel({ workspace }) {
75
+ const api = useApi();
76
+ const theme = useTheme();
77
+ const { close } = usePanel();
78
+ const [note, setNote] = useState('');
79
+ const [problem, setProblem] = useState();
80
+ const ask = () => api.request('team/request-access', { ...(note.trim() && { message: note.trim() }) }).then(() => {
81
+ close();
82
+ api.act(api.inSession('session/notice', { text: `Asked to join ${workspace}. You’ll get an email when an admin lets you in.`, tone: 'muted' }));
83
+ }, (error) => setProblem(errorMessage(error)));
84
+ useInput((_, key) => {
85
+ if (key.escape)
86
+ close();
87
+ });
88
+ return (_jsxs(Panel, { title: "Ask for access", subtitle: workspace, hints: [['Enter', 'ask'], ['Esc', 'cancel']], children: [_jsxs(Text, { color: theme.muted, children: ["This project belongs to ", workspace, ". Its admins get your request by email; once one approves, its decisions reach your agents."] }), _jsxs(Box, { children: [_jsx(Text, { color: theme.muted, children: '> ' }), _jsx(PromptInput, { value: note, onChange: setNote, onSubmit: () => void ask(), placeholder: "A note for them, if you like", paddingX: 0 })] }), problem && _jsx(Text, { color: theme.error, children: problem })] }));
89
+ }
90
+ function SaidPanel({ text }) {
91
+ const theme = useTheme();
92
+ const { close } = usePanel();
93
+ useInput((_, key) => {
94
+ if (key.escape || key.return)
95
+ close();
96
+ });
97
+ return (_jsx(Panel, { title: "Team", hints: [['Esc', 'close']], children: _jsx(Text, { color: theme.muted, children: text }) }));
98
+ }
99
+ function hintsOf(step) {
100
+ if (step.kind === 'workspace' || step.kind === 'project')
101
+ return [['Enter', 'choose'], ['Up/Down', 'move'], ['Esc', 'cancel']];
102
+ return [['Esc', 'close']];
103
+ }
104
+ //# sourceMappingURL=link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link.js","sourceRoot":"","sources":["../../src/panels/link.tsx"],"names":[],"mappings":"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"}
@@ -87,6 +87,10 @@ export const announcementsAtom = atom((get) => app(get).announcements ?? noAnnou
87
87
  export const claudeSetupOfferedAtom = atom((get) => app(get).claudeSetupOffered === true);
88
88
  /** The default for new sessions, which `ctrl+g` turns on and off. */
89
89
  export const worktreesAtom = atom((get) => app(get).worktrees);
90
+ /** Whether the project belongs to a team, and what its user may do there. */
91
+ export const teamAtom = atom((get) => app(get).team);
92
+ /** The team's decisions as the shown session's branch sees them; none outside a team the user is in. */
93
+ export const decisionsAtom = atom((get) => fields(get).decisions);
90
94
  export const mentionAtom = atom((get) => skillMention(get(skillsAtom)));
91
95
  export const modelNameAtom = atom((get) => modelName(get(selectionAtom), get(modelsAtom)));
92
96
  export const modelLabelAtom = atom((get) => modelLabel(get(selectionAtom), get(modelsAtom)));
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/state/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/state/session.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { useTheme } from '@jinion/tui';
3
3
  import { atom, useAtomValue } from 'jotai';
4
4
  import { limitsKey } from '@jinion/core/agent/usage';
5
5
  import { useApi } from '../app/api.js';
6
- import { accountAtom, agentAtom, identityAtom, modeAtom, modelNameAtom, seenLimitsAtom, selectionAtom, sessionAtom } from '../state/session.js';
6
+ import { accountAtom, agentAtom, decisionsAtom, identityAtom, modeAtom, modelNameAtom, seenLimitsAtom, selectionAtom, sessionAtom, teamAtom } from '../state/session.js';
7
7
  /** Set by the status line, which runs `git status` only while a shown segment needs it. */
8
8
  export const gitStatusAtom = atom(undefined);
9
9
  export function useStatusData(now = Date.now()) {
@@ -21,6 +21,8 @@ export function useStatusData(now = Date.now()) {
21
21
  session: useAtomValue(sessionAtom),
22
22
  git: useAtomValue(gitStatusAtom),
23
23
  limits: seen[limitsKey(agent.name, account)]?.windows,
24
+ team: useAtomValue(teamAtom),
25
+ decisions: useAtomValue(decisionsAtom),
24
26
  now,
25
27
  theme: useTheme(),
26
28
  };
@@ -1 +1 @@
1
- {"version":3,"file":"data.js","sourceRoot":"","sources":["../../src/status/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGhJ,2FAA2F;AAC3F,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAwB,SAAS,CAAC,CAAC;AAEpE,MAAM,UAAU,aAAa,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IAC5C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC,WAAW,CAAC;IACtC,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;IAE1C,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,KAAK,EAAE,KAAK,CAAC,IAAI;QACjB,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,aAAa,CAAC,EAAE;QACpF,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;QAC5B,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC;QACnC,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC;QAClC,GAAG,EAAE,YAAY,CAAC,aAAa,CAAC;QAChC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO;QACrD,GAAG;QACH,KAAK,EAAE,QAAQ,EAAE;KAClB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,MAAe,EAAE,QAAQ,GAAG,MAAM;IACvD,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEzC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAEnB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QAE9D,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEvB,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"data.js","sourceRoot":"","sources":["../../src/status/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGzK,2FAA2F;AAC3F,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAwB,SAAS,CAAC,CAAC;AAEpE,MAAM,UAAU,aAAa,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IAC5C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC,WAAW,CAAC;IACtC,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;IAE1C,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,KAAK,EAAE,KAAK,CAAC,IAAI;QACjB,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,aAAa,CAAC,EAAE;QACpF,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;QAC5B,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC;QACnC,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC;QAClC,GAAG,EAAE,YAAY,CAAC,aAAa,CAAC;QAChC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO;QACrD,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;QAC5B,SAAS,EAAE,YAAY,CAAC,aAAa,CAAC;QACtC,GAAG;QACH,KAAK,EAAE,QAAQ,EAAE;KAClB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,MAAe,EAAE,QAAQ,GAAG,MAAM;IACvD,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEzC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAEnB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QAE9D,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEvB,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -4,6 +4,7 @@ export const DEFAULT_STATUS_LINE = [
4
4
  { id: 'model', side: 'left' },
5
5
  { id: 'directory', side: 'left' },
6
6
  { id: 'worktree', side: 'left' },
7
+ { id: 'team', side: 'left' },
7
8
  { id: 'context', side: 'left' },
8
9
  { id: 'cost', side: 'left' },
9
10
  { id: 'title', side: 'right' },
@@ -1 +1 @@
1
- {"version":3,"file":"line.js","sourceRoot":"","sources":["../../src/status/line.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,MAAM,CAAC,MAAM,mBAAmB,GAAiB;IAC/C,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;IAC7B,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;IAC7B,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE;IACjC,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;IAChC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE;IAC/B,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;IAC5B,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;CAC/B,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,KAAmB,EAAE,IAAgB;IACpE,MAAM,IAAI,GAAgB,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAgB,EAAE,CAAC;IAE9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/D,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,EAAE;YAAE,SAAS;QAEnF,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC;AAEvG,0DAA0D;AAC1D,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAmB,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"line.js","sourceRoot":"","sources":["../../src/status/line.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,MAAM,CAAC,MAAM,mBAAmB,GAAiB;IAC/C,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;IAC7B,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;IAC7B,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE;IACjC,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;IAChC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;IAC5B,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE;IAC/B,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;IAC5B,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;CAC/B,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,KAAmB,EAAE,IAAgB;IACpE,MAAM,IAAI,GAAgB,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAgB,EAAE,CAAC;IAE9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/D,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,EAAE;YAAE,SAAS;QAEnF,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,IAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC;AAEvG,0DAA0D;AAC1D,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAmB,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"segment.js","sourceRoot":"","sources":["../../src/status/segment.ts"],"names":[],"mappings":"AAsCA,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAY,EAAE,IAAY,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC"}
1
+ {"version":3,"file":"segment.js","sourceRoot":"","sources":["../../src/status/segment.ts"],"names":[],"mappings":"AA0CA,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAY,EAAE,IAAY,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { changes, duration, tasks, time, title, turns } from './conversation.js';
2
2
  import { git, worktree } from './git.js';
3
+ import { team } from './team.js';
3
4
  import { account, agent, brand, directory, mode, model, version } from './identity.js';
4
5
  import { context, cost, limits } from './usage.js';
5
6
  /** In the order `/statusline` lists them. */
@@ -11,6 +12,7 @@ export const SEGMENTS = [
11
12
  directory,
12
13
  worktree,
13
14
  git,
15
+ team,
14
16
  context,
15
17
  limits,
16
18
  cost,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/status/segments/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEnD,6CAA6C;AAC7C,MAAM,CAAC,MAAM,QAAQ,GAAc;IACjC,KAAK;IACL,KAAK;IACL,OAAO;IACP,IAAI;IACJ,SAAS;IACT,QAAQ;IACR,GAAG;IACH,OAAO;IACP,MAAM;IACN,IAAI;IACJ,OAAO;IACP,KAAK;IACL,KAAK;IACL,QAAQ;IACR,KAAK;IACL,IAAI;IACJ,KAAK;IACL,OAAO;CACR,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/status/segments/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEnD,6CAA6C;AAC7C,MAAM,CAAC,MAAM,QAAQ,GAAc;IACjC,KAAK;IACL,KAAK;IACL,OAAO;IACP,IAAI;IACJ,SAAS;IACT,QAAQ;IACR,GAAG;IACH,IAAI;IACJ,OAAO;IACP,MAAM;IACN,IAAI;IACJ,OAAO;IACP,KAAK;IACL,KAAK;IACL,QAAQ;IACR,KAAK;IACL,IAAI;IACJ,KAAK;IACL,OAAO;CACR,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Text } from '@jinion/tui';
3
+ import { Tag } from '@jinion/tui/chat';
4
+ export const team = {
5
+ id: 'team',
6
+ name: 'Team',
7
+ description: 'The team this repository is linked to, and its decisions you haven’t pulled yet',
8
+ render: ({ team, decisions, theme }) => {
9
+ if (team?.state === 'requested')
10
+ return _jsx(Tag, { name: "T", value: _jsxs(Text, { color: theme.muted, children: ["asked to join ", team.workspace.name] }), color: theme.code });
11
+ if (team?.state !== 'member')
12
+ return undefined;
13
+ const behind = decisions?.counts['not-pulled'] ?? 0;
14
+ return (_jsx(Tag, { name: "T", value: _jsxs(Text, { children: [team.workspace.name, behind > 0 && _jsxs(Text, { color: theme.warning, children: [" ", behind, " to pull"] })] }), color: theme.code }));
15
+ },
16
+ };
17
+ //# sourceMappingURL=team.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"team.js","sourceRoot":"","sources":["../../../src/status/segments/team.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAGvC,MAAM,CAAC,MAAM,IAAI,GAAY;IAC3B,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,iFAAiF;IAC9F,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE;QACrC,IAAI,IAAI,EAAE,KAAK,KAAK,WAAW;YAAE,OAAO,KAAC,GAAG,IAAC,IAAI,EAAC,GAAG,EAAC,KAAK,EAAE,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,+BAAiB,IAAI,CAAC,SAAS,CAAC,IAAI,IAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,GAAI,CAAC;QACzJ,IAAI,IAAI,EAAE,KAAK,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QAE/C,MAAM,MAAM,GAAG,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAEpD,OAAO,CACL,KAAC,GAAG,IACF,IAAI,EAAC,GAAG,EACR,KAAK,EACH,MAAC,IAAI,eACF,IAAI,CAAC,SAAS,CAAC,IAAI,EACnB,MAAM,GAAG,CAAC,IAAI,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,OAAO,kBAAI,MAAM,gBAAgB,IAC9D,EAET,KAAK,EAAE,KAAK,CAAC,IAAI,GACjB,CACH,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -0,0 +1,44 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Box, Text, Tree, useTheme, useView } from '@jinion/tui';
3
+ import { ToolLine } from '@jinion/tui/chat';
4
+ import { shortDate } from '@jinion/core/lib/format';
5
+ import { ORIGIN_WORDS } from '@jinion/core/team/decision';
6
+ import { useApi } from '../../app/api.js';
7
+ import { useAsync } from '../use-async.js';
8
+ /** A team decision in a turn: one the agent recorded, one it kept to, or a teammate's on another branch it met. */
9
+ export function DecisionEntry({ entry }) {
10
+ const theme = useTheme();
11
+ const { expanded } = useView();
12
+ const faint = (text) => _jsx(Text, { color: theme.muted, children: text });
13
+ const made = entry.madeAt ? ` · ${shortDate(new Date(entry.madeAt))}` : '';
14
+ if (entry.elsewhere) {
15
+ const { branch, pullRequest, pullRequestState, paths } = entry.elsewhere;
16
+ const where = [branch, pullRequest ? `#${pullRequest} ${pullRequestState ?? 'open'}` : undefined].filter(Boolean).join(' ');
17
+ // Amber rather than an error's red: nothing failed, it is something to know before merging.
18
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { children: [_jsx(Text, { color: theme.warning, children: "[!]" }), " ", _jsx(Text, { bold: true, children: "Also on another branch" }), " ", entry.by, "'s \"", entry.title, "\"", faint(where ? ` · ${where}` : '')] }), _jsx(Tree, { nodes: [{ label: `This turn changed ${paths.join(', ')}, which it concerns too.` }] })] }));
19
+ }
20
+ if (entry.kept) {
21
+ return (_jsx(ToolLine, { status: "done", name: `Kept to ${entry.by}'s decision`, detail: _jsxs(Text, { children: [entry.title, faint(made)] }) }));
22
+ }
23
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsx(ToolLine, { status: entry.deleted ? 'cancelled' : 'done', name: entry.deleted ? 'Deleted decision' : 'Recorded decision', detail: _jsxs(Text, { children: [_jsx(Text, { strikethrough: entry.deleted, children: entry.title }), faint(` · ${ORIGIN_WORDS[entry.origin]}`)] }) }), expanded && !entry.deleted && _jsx(Details, { id: entry.decision })] }));
24
+ }
25
+ /** What was decided and why, from this machine's copy of the team's decisions. */
26
+ function Details({ id }) {
27
+ const api = useApi();
28
+ const theme = useTheme();
29
+ const decision = useAsync(() => api.request('team/decision', { id }), [id]);
30
+ if (decision.state !== 'done' || !decision.value)
31
+ return null;
32
+ return _jsx(Tree, { nodes: details(decision.value, theme.muted) });
33
+ }
34
+ function details(decision, muted) {
35
+ const row = (name, text) => ({ label: _jsxs(Text, { children: [_jsxs(Text, { color: muted, children: [name, ": "] }), text] }) });
36
+ return [
37
+ row('Decided', decision.decision),
38
+ row('Why', decision.reason),
39
+ ...(decision.turnedDown ? [row('Turned down', decision.turnedDown)] : []),
40
+ ...(decision.paths.length > 0 ? [row('Concerns', decision.paths.join(', '))] : []),
41
+ { label: _jsx(Text, { color: muted, children: "Delete it from /decisions." }) },
42
+ ];
43
+ }
44
+ //# sourceMappingURL=decision-entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decision-entry.js","sourceRoot":"","sources":["../../../src/ui/entries/decision-entry.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAiB,MAAM,aAAa,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAiB,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,mHAAmH;AACnH,MAAM,UAAU,aAAa,CAAC,EAAE,KAAK,EAAkC;IACrE,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,CAAC;IAE/B,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,YAAG,IAAI,GAAQ,CAAC;IACxE,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3E,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC;QACzE,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,IAAI,gBAAgB,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE5H,4FAA4F;QAC5F,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,OAAO,oBAAY,OAAC,KAAC,IAAI,IAAC,IAAI,6CAA8B,OAAE,KAAK,CAAC,EAAE,WAAM,KAAK,CAAC,KAAK,QACzG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAC7B,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,qBAAqB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,CAAC,GAAI,IACzF,CACP,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,OAAO,CACL,KAAC,QAAQ,IACP,MAAM,EAAC,MAAM,EACb,IAAI,EAAE,WAAW,KAAK,CAAC,EAAE,aAAa,EACtC,MAAM,EACJ,MAAC,IAAI,eACF,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,CAAC,IACP,GAET,CACH,CAAC;IACJ,CAAC;IAED,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,QAAQ,IACP,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,EAC5C,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,mBAAmB,EAC9D,MAAM,EACJ,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,aAAa,EAAE,KAAK,CAAC,OAAO,YAAG,KAAK,CAAC,KAAK,GAAQ,EACvD,KAAK,CAAC,MAAM,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IACrC,GAET,EACD,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAC,OAAO,IAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,GAAI,IAC1D,CACP,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,SAAS,OAAO,CAAC,EAAE,EAAE,EAAkB;IACrC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;IACrB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE5E,IAAI,QAAQ,CAAC,KAAK,KAAK,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAE9D,OAAO,KAAC,IAAI,IAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAI,CAAC;AAC/D,CAAC;AAED,SAAS,OAAO,CAAC,QAAkB,EAAE,KAAa;IAChD,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,MAAC,IAAI,eAAC,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,aAAG,IAAI,UAAU,EAAC,IAAI,IAAQ,EAAE,CAAC,CAAC;IAEhH,OAAO;QACL,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC;QACjC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC;QAC3B,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,EAAE,KAAK,EAAE,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,2CAAmC,EAAE;KACjE,CAAC;AACJ,CAAC"}
@@ -5,6 +5,7 @@ import { Notice, Thinking } from '@jinion/tui/chat';
5
5
  import { elapsed } from '@jinion/core/lib/format';
6
6
  import { Banner } from '../banner.js';
7
7
  import { ChangesCard } from './changes-card.js';
8
+ import { DecisionEntry } from './decision-entry.js';
8
9
  import { Compaction, TaskEnd, UserEntry } from './status-entries.js';
9
10
  import { opensFurther } from './tools/result-preview.js';
10
11
  import { ToolView } from './tools/tool-view.js';
@@ -48,6 +49,8 @@ function expandable(entry) {
48
49
  return entry.prompt !== undefined;
49
50
  case 'compaction':
50
51
  return entry.summary !== undefined;
52
+ case 'decision':
53
+ return !entry.kept && !entry.elsewhere && !entry.deleted;
51
54
  default:
52
55
  return false;
53
56
  }
@@ -78,6 +81,8 @@ function EntryBody({ entry, live }) {
78
81
  return _jsx(ChangesCard, { entry: entry });
79
82
  case 'tool':
80
83
  return _jsx(ToolView, { entry: entry, live: live });
84
+ case 'decision':
85
+ return _jsx(DecisionEntry, { entry: entry });
81
86
  }
82
87
  }
83
88
  //# sourceMappingURL=entry-view.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"entry-view.js","sourceRoot":"","sources":["../../../src/ui/entries/entry-view.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entry-view.js","sourceRoot":"","sources":["../../../src/ui/entries/entry-view.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jinion/cli",
3
- "version": "0.5.655",
3
+ "version": "0.6.760",
4
4
  "description": "Jinion coding agent",
5
5
  "license": "MIT",
6
6
  "homepage": "https://jinion.co",
@@ -19,8 +19,8 @@
19
19
  "dependencies": {
20
20
  "jotai": "^3.0.1",
21
21
  "react": "^19.3.0",
22
- "@jinion/core": "0.5.0",
23
- "@jinion/tui": "0.0.7"
22
+ "@jinion/tui": "0.0.8",
23
+ "@jinion/core": "0.5.2"
24
24
  },
25
25
  "devDependencies": {
26
26
  "@types/react": "^19.3.0",