@atollhq/skill-gemini 0.1.10 → 0.1.12

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/README.md CHANGED
@@ -7,11 +7,13 @@ Gives your Gemini agent the ability to manage tasks, goals, KPIs, initiatives, m
7
7
  ## Install
8
8
 
9
9
  ```bash
10
- npx @atollhq/skill-gemini --key sk_atoll_... --org your-org-id
10
+ npx @atollhq/skill-gemini --key sk_atoll_... --org your-org-id --project project-id --team team-id
11
11
  # or
12
12
  ATOLL_API_KEY=sk_atoll_... ATOLL_ORG_ID=your-org-id npx @atollhq/skill-gemini
13
13
  ```
14
14
 
15
+ Optional defaults: `--project`, `--team`, and `--base-url` write `ATOLL_PROJECT`, `ATOLL_TEAM`, and `ATOLL_BASE_URL` for the agent.
16
+
15
17
  Get an API key from **Settings > Members > Add Agent** (or **Create API Key** for integrations) in the Atoll app.
16
18
 
17
19
  This does four things:
@@ -19,7 +21,7 @@ This does four things:
19
21
  1. Installs the `atoll-api` skill to `~/.gemini/skills/atoll-api/`
20
22
  2. Appends (or updates) an `# Atoll Integration` section in `~/.gemini/GEMINI.md`
21
23
  3. Copies API reference files to `~/.gemini/atoll-references/`
22
- 4. Appends `ATOLL_API_KEY` and `ATOLL_ORG_ID` exports to your shell profile (`~/.zshrc` or `~/.bashrc`)
24
+ 4. Appends Atoll env var exports to your shell profile (`~/.zshrc` or `~/.bashrc`)
23
25
 
24
26
  Open a fresh shell (or `source` your profile) and Gemini has the Atoll integration.
25
27
 
@@ -41,8 +43,7 @@ For terminal-first work, see [`@atollhq/cli`](https://www.npmjs.com/package/@ato
41
43
 
42
44
  ```bash
43
45
  npm install -g @atollhq/cli
44
- atoll auth login --key sk_atoll_...
45
- atoll config set-org your-org-slug
46
+ atoll auth login --profile agent-a --key sk_atoll_... --org your-org-slug --project project-id --team team-id
46
47
  atoll heartbeat
47
48
  atoll issue list --json
48
49
  atoll agent-context
@@ -52,7 +53,7 @@ For multiple agents or orgs, use CLI auth profiles:
52
53
 
53
54
  ```bash
54
55
  atoll auth login --profile agent-a --key sk_atoll_... --org acme
55
- atoll auth login --profile agent-b --key sk_atoll_... --org client
56
+ atoll auth login --profile agent-b --key sk_atoll_... --org client --project project-id --team team-id
56
57
  atoll --profile agent-b issue list
57
58
  ```
58
59
 
package/bin/install.mjs CHANGED
@@ -12,6 +12,9 @@ function parseArgs(argv) {
12
12
  for (let i = 2; i < argv.length; i++) {
13
13
  if (argv[i] === '--key' && argv[i + 1]) args.key = argv[++i]
14
14
  else if (argv[i] === '--org' && argv[i + 1]) args.org = argv[++i]
15
+ else if (argv[i] === '--project' && argv[i + 1]) args.project = argv[++i]
16
+ else if (argv[i] === '--team' && argv[i + 1]) args.team = argv[++i]
17
+ else if (argv[i] === '--base-url' && argv[i + 1]) args.baseUrl = argv[++i]
15
18
  else if (argv[i] === '--help' || argv[i] === '-h') args.help = true
16
19
  }
17
20
  return args
@@ -19,24 +22,30 @@ function parseArgs(argv) {
19
22
 
20
23
  function printUsage() {
21
24
  console.log(`
22
- Usage: npx @atollhq/skill-gemini --key <api-key> --org <org-id>
25
+ Usage: npx @atollhq/skill-gemini --key <api-key> --org <org-id> [--project <id>] [--team <id-or-slug>] [--base-url <url>]
23
26
  or: ATOLL_API_KEY=<api-key> ATOLL_ORG_ID=<org-id> npx @atollhq/skill-gemini
24
27
 
25
28
  Options:
26
- --key Atoll API key (sk_atoll_...). Defaults to ATOLL_API_KEY.
27
- --org Organization ID. Defaults to ATOLL_ORG_ID.
28
- --help Show this help message
29
+ --key Atoll API key (sk_atoll_...). Defaults to ATOLL_API_KEY.
30
+ --org Organization ID. Defaults to ATOLL_ORG_ID.
31
+ --project Default project ID. Defaults to ATOLL_PROJECT.
32
+ --team Default team ID or slug. Defaults to ATOLL_TEAM.
33
+ --base-url Atoll base URL. Defaults to ATOLL_BASE_URL.
34
+ --help Show this help message
29
35
 
30
36
  Installs the Atoll integration for Gemini CLI:
31
37
  - Installs the atoll-api skill to ~/.gemini/skills/atoll-api/
32
38
  - Writes GEMINI.md with API reference to ~/.gemini/
33
- - Sets ATOLL_API_KEY and ATOLL_ORG_ID env vars
39
+ - Sets Atoll env vars
34
40
  `)
35
41
  }
36
42
 
37
43
  const args = parseArgs(process.argv)
38
44
  args.key ??= process.env.ATOLL_API_KEY
39
45
  args.org ??= process.env.ATOLL_ORG_ID
46
+ args.project ??= process.env.ATOLL_PROJECT
47
+ args.team ??= process.env.ATOLL_TEAM
48
+ args.baseUrl ??= process.env.ATOLL_BASE_URL
40
49
 
41
50
  if (args.help) { printUsage(); process.exit(0) }
42
51
 
@@ -64,6 +73,11 @@ console.log(`Installed Atoll skill to ${skillDest}`)
64
73
  // 2. Write GEMINI.md to ~/.gemini/
65
74
  const skillMd = readFileSync(join(skillDir, 'SKILL.md'), 'utf-8')
66
75
  const body = skillMd.replace(/^---[\s\S]*?---\n*/, '')
76
+ const optionalCredentialLines = [
77
+ args.project ? `- Default project ID: ${args.project}` : null,
78
+ args.team ? `- Default team: ${args.team}` : null,
79
+ args.baseUrl ? `- Base URL: ${args.baseUrl}` : null,
80
+ ].filter(Boolean).join('\n')
67
81
 
68
82
  const geminiMd = `# Atoll Integration
69
83
 
@@ -72,7 +86,7 @@ ${body}
72
86
  ## Credentials
73
87
 
74
88
  - API Key: set as ATOLL_API_KEY environment variable
75
- - Org ID: ${args.org}
89
+ - Org ID: ${args.org}${optionalCredentialLines ? `\n${optionalCredentialLines}` : ''}
76
90
  `
77
91
 
78
92
  const geminiPath = join(geminiDir, 'GEMINI.md')
@@ -117,12 +131,27 @@ if (existsSync(profilePath)) {
117
131
  }
118
132
  profile = upsertExport(profile, 'ATOLL_API_KEY', args.key)
119
133
  profile = upsertExport(profile, 'ATOLL_ORG_ID', args.org)
134
+ if (args.project) profile = upsertExport(profile, 'ATOLL_PROJECT', args.project)
135
+ if (args.team) profile = upsertExport(profile, 'ATOLL_TEAM', args.team)
136
+ if (args.baseUrl) profile = upsertExport(profile, 'ATOLL_BASE_URL', args.baseUrl)
120
137
  writeFileSync(profilePath, profile)
121
- console.log(`Configured ATOLL_API_KEY and ATOLL_ORG_ID in ${profilePath}`)
138
+ const configuredVars = ['ATOLL_API_KEY', 'ATOLL_ORG_ID']
139
+ if (args.project) configuredVars.push('ATOLL_PROJECT')
140
+ if (args.team) configuredVars.push('ATOLL_TEAM')
141
+ if (args.baseUrl) configuredVars.push('ATOLL_BASE_URL')
142
+ console.log(`Configured ${configuredVars.join(', ')} in ${profilePath}`)
122
143
  } else {
123
- const envBlock = `\n# Atoll (added by @atollhq/skill-gemini)\nexport ATOLL_API_KEY="${args.key}"\nexport ATOLL_ORG_ID="${args.org}"\n`
144
+ const envLines = [
145
+ '# Atoll (added by @atollhq/skill-gemini)',
146
+ `export ATOLL_API_KEY="${args.key}"`,
147
+ `export ATOLL_ORG_ID="${args.org}"`,
148
+ args.project ? `export ATOLL_PROJECT="${args.project}"` : null,
149
+ args.team ? `export ATOLL_TEAM="${args.team}"` : null,
150
+ args.baseUrl ? `export ATOLL_BASE_URL="${args.baseUrl}"` : null,
151
+ ].filter(Boolean)
152
+ const envBlock = `\n${envLines.join('\n')}\n`
124
153
  writeFileSync(profilePath, envBlock)
125
- console.log(`Created ${profilePath} with ATOLL_API_KEY and ATOLL_ORG_ID`)
154
+ console.log(`Created ${profilePath} with Atoll env vars`)
126
155
  }
127
156
 
128
157
  console.log(`\nDone! Restart your shell, then Gemini CLI will have access to the Atoll API.`)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atollhq/skill-gemini",
3
- "version": "0.1.10",
3
+ "version": "0.1.12",
4
4
  "description": "Install the Atoll project management integration for Gemini CLI",
5
5
  "bin": {
6
6
  "skill-gemini": "bin/install.mjs"
package/skill/SKILL.md CHANGED
@@ -64,7 +64,7 @@ For machines or agents that need multiple credentials, use auth profiles:
64
64
 
65
65
  ```bash
66
66
  atoll auth login --profile agent-a --key sk_atoll_... --org acme
67
- atoll auth login --profile agent-b --key sk_atoll_... --org client
67
+ atoll auth login --profile agent-b --key sk_atoll_... --org client --project project-id --team team-id
68
68
  atoll auth profiles
69
69
  atoll auth use agent-a
70
70
 
@@ -72,6 +72,8 @@ atoll auth use agent-a
72
72
  atoll --profile agent-b issue list
73
73
  ```
74
74
 
75
+ Profiles can store default project, team, and base URL values. `atoll issue list` and `atoll issue create` apply the selected default team unless a command-level `--team` override is passed.
76
+
75
77
  Common commands:
76
78
 
77
79
  ```bash
@@ -398,7 +398,9 @@ URL must be HTTPS. Returns webhook record plus `secret` for HMAC verification.
398
398
  | POST | `/api/orgs/{id}/agents/{agentId}/keys` | Generate new key |
399
399
  | DELETE | `/api/orgs/{id}/agents/{agentId}/keys/{keyId}` | Revoke key |
400
400
  | POST | `/api/orgs/{id}/agents/{agentId}/rotate` | Rotate all keys |
401
- | POST | `/api/orgs/{id}/agents/{agentId}/install-snippets` | Get install snippets (`{ key }`) |
401
+ | POST | `/api/orgs/{id}/agents/{agentId}/install-snippets` | Get install snippets (`{ key, profileName?, projectId?, teamId?, baseUrl? }`) |
402
+
403
+ Install snippets returns config for `claude-code`, `codex`, `gemini`, `openclaw` (agent prompt), `openclaw-manual`, `hermes` (agent prompt), and `hermes-manual`. The server resolves the org slug and validates optional project/team IDs before generating snippets.
402
404
 
403
405
  ## Integrations
404
406