@uzukko/agentpm 0.1.0 → 0.1.2
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 +161 -0
- package/dist/commands/config-cmd.js +5 -10
- package/dist/commands/config-cmd.js.map +1 -1
- package/dist/config.js +3 -3
- package/dist/config.js.map +1 -1
- package/package.json +1 -1
- package/src/commands/config-cmd.ts +5 -10
- package/src/config.ts +3 -3
package/README.md
ADDED
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
# AgentPM CLI
|
|
2
|
+
|
|
3
|
+
Command-line client for [AgentPM](https://agentpm.app) — AI-first project management.
|
|
4
|
+
|
|
5
|
+
[日本語はこちら](#日本語)
|
|
6
|
+
|
|
7
|
+
## Installation
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm install -g @uzukko/agentpm
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Setup
|
|
14
|
+
|
|
15
|
+
1. Create an account at [AgentPM](https://agentpm.app)
|
|
16
|
+
2. Go to Settings → API Keys and generate a key
|
|
17
|
+
3. Login via CLI:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
agentpm login
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Usage
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
# List projects
|
|
27
|
+
agentpm space list
|
|
28
|
+
|
|
29
|
+
# List tasks
|
|
30
|
+
agentpm task list --space-id <SPACE_ID>
|
|
31
|
+
|
|
32
|
+
# Create a task
|
|
33
|
+
agentpm task create --space-id <SPACE_ID> --title "Task title"
|
|
34
|
+
|
|
35
|
+
# Get task details
|
|
36
|
+
agentpm task get --id <TASK_ID>
|
|
37
|
+
|
|
38
|
+
# Update task
|
|
39
|
+
agentpm task update --id <TASK_ID> --status in_progress
|
|
40
|
+
|
|
41
|
+
# Toss ball (change who needs to act next)
|
|
42
|
+
agentpm ball toss --task-id <TASK_ID> --side client --reason "Please review"
|
|
43
|
+
|
|
44
|
+
# Milestones
|
|
45
|
+
agentpm milestone list --space-id <SPACE_ID>
|
|
46
|
+
|
|
47
|
+
# Meetings
|
|
48
|
+
agentpm meeting list --space-id <SPACE_ID>
|
|
49
|
+
|
|
50
|
+
# Wiki
|
|
51
|
+
agentpm wiki list --space-id <SPACE_ID>
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Run `agentpm --help` for the full list of commands.
|
|
55
|
+
|
|
56
|
+
## Configuration
|
|
57
|
+
|
|
58
|
+
Saved in `~/.taskapprc.json`:
|
|
59
|
+
|
|
60
|
+
```json
|
|
61
|
+
{
|
|
62
|
+
"apiKey": "tsk_...",
|
|
63
|
+
"apiUrl": "https://agentpm.app",
|
|
64
|
+
"defaultSpaceId": "optional"
|
|
65
|
+
}
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Set `defaultSpaceId` to skip `--space-id` on every command.
|
|
69
|
+
|
|
70
|
+
## Environment Variables
|
|
71
|
+
|
|
72
|
+
Override config file settings:
|
|
73
|
+
|
|
74
|
+
| Variable | Description |
|
|
75
|
+
|----------|-------------|
|
|
76
|
+
| `TASKAPP_API_KEY` | API Key |
|
|
77
|
+
| `TASKAPP_API_URL` | API URL (default: https://agentpm.app) |
|
|
78
|
+
| `TASKAPP_SPACE_ID` | Default Space ID |
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## 日本語
|
|
83
|
+
|
|
84
|
+
AI ファーストのプロジェクト管理ツール [AgentPM](https://agentpm.app) のコマンドラインクライアントです。
|
|
85
|
+
|
|
86
|
+
### インストール
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
npm install -g @uzukko/agentpm
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### セットアップ
|
|
93
|
+
|
|
94
|
+
1. [AgentPM](https://agentpm.app) でアカウント作成
|
|
95
|
+
2. 設定 → APIキー管理 から API Key を発行
|
|
96
|
+
3. CLI にログイン:
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
agentpm login
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### 使い方
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
# プロジェクト一覧
|
|
106
|
+
agentpm space list
|
|
107
|
+
|
|
108
|
+
# タスク一覧
|
|
109
|
+
agentpm task list --space-id <SPACE_ID>
|
|
110
|
+
|
|
111
|
+
# タスク作成
|
|
112
|
+
agentpm task create --space-id <SPACE_ID> --title "タスク名"
|
|
113
|
+
|
|
114
|
+
# タスク詳細
|
|
115
|
+
agentpm task get --id <TASK_ID>
|
|
116
|
+
|
|
117
|
+
# タスク更新
|
|
118
|
+
agentpm task update --id <TASK_ID> --status in_progress
|
|
119
|
+
|
|
120
|
+
# ボール変更(次に誰がアクションすべきか)
|
|
121
|
+
agentpm ball toss --task-id <TASK_ID> --side client --reason "確認お願いします"
|
|
122
|
+
|
|
123
|
+
# マイルストーン一覧
|
|
124
|
+
agentpm milestone list --space-id <SPACE_ID>
|
|
125
|
+
|
|
126
|
+
# ミーティング一覧
|
|
127
|
+
agentpm meeting list --space-id <SPACE_ID>
|
|
128
|
+
|
|
129
|
+
# Wiki ページ一覧
|
|
130
|
+
agentpm wiki list --space-id <SPACE_ID>
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
全コマンド一覧は `agentpm --help` で確認できます。
|
|
134
|
+
|
|
135
|
+
### 設定ファイル
|
|
136
|
+
|
|
137
|
+
`~/.taskapprc.json` に保存されます:
|
|
138
|
+
|
|
139
|
+
```json
|
|
140
|
+
{
|
|
141
|
+
"apiKey": "tsk_...",
|
|
142
|
+
"apiUrl": "https://agentpm.app",
|
|
143
|
+
"defaultSpaceId": "省略可"
|
|
144
|
+
}
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
`defaultSpaceId` を設定すると `--space-id` の指定を省略できます。
|
|
148
|
+
|
|
149
|
+
### 環境変数
|
|
150
|
+
|
|
151
|
+
設定ファイルより優先されます:
|
|
152
|
+
|
|
153
|
+
| 変数 | 説明 |
|
|
154
|
+
|------|------|
|
|
155
|
+
| `TASKAPP_API_KEY` | API Key |
|
|
156
|
+
| `TASKAPP_API_URL` | API URL (デフォルト: https://agentpm.app) |
|
|
157
|
+
| `TASKAPP_SPACE_ID` | デフォルト Space ID |
|
|
158
|
+
|
|
159
|
+
## License
|
|
160
|
+
|
|
161
|
+
MIT
|
|
@@ -36,23 +36,18 @@ export function registerConfigCommand(program) {
|
|
|
36
36
|
const existing = loadExisting();
|
|
37
37
|
console.error('AgentPM CLI Login');
|
|
38
38
|
console.error('─'.repeat(40));
|
|
39
|
+
console.error('Get your API Key from: Settings → APIキー管理\n');
|
|
39
40
|
const config = { ...existing };
|
|
40
|
-
const apiUrl = await prompt('API URL', existing.apiUrl || undefined);
|
|
41
|
-
if (apiUrl)
|
|
42
|
-
config.apiUrl = apiUrl;
|
|
43
|
-
console.error('\nPaste your API Key from Web UI → Settings → API Keys:');
|
|
44
41
|
const apiKey = await prompt('API Key', existing.apiKey ? maskSecret(existing.apiKey) : undefined);
|
|
45
42
|
if (apiKey && !apiKey.includes('...')) {
|
|
46
43
|
config.apiKey = apiKey;
|
|
47
44
|
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
45
|
+
if (!config.apiUrl) {
|
|
46
|
+
config.apiUrl = 'https://agentpm.app';
|
|
47
|
+
}
|
|
51
48
|
writeFileSync(configPath, JSON.stringify(config, null, 2) + '\n');
|
|
52
49
|
console.error(`\n✓ Config saved to ${configPath}`);
|
|
53
|
-
|
|
54
|
-
console.error('✓ Run `agentpm space list` to verify your setup');
|
|
55
|
-
}
|
|
50
|
+
console.error('✓ Run `agentpm space list` to verify your setup');
|
|
56
51
|
});
|
|
57
52
|
// agentpm config — advanced config management
|
|
58
53
|
const cfg = program.command('config').description('CLI configuration');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-cmd.js","sourceRoot":"","sources":["../../src/commands/config-cmd.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE5C,KAAK,UAAU,MAAM,CAAC,QAAgB,EAAE,YAAqB;IAC3D,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAC5E,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;IACvD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,EAAE,CAAC,QAAQ,CAAC,GAAG,QAAQ,GAAG,MAAM,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE;YAC/C,EAAE,CAAC,KAAK,EAAE,CAAA;YACV,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,YAAY,IAAI,EAAE,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,YAAY;IACnB,MAAM,UAAU,GAAG,aAAa,EAAE,CAAA;IAClC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAA;QACtD,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAED,SAAS,UAAU,CAAC,KAAyB;IAC3C,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAA;IAC5B,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AACpD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,gBAAgB;IAChB,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,oEAAoE,CAAC;SACjF,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,UAAU,GAAG,aAAa,EAAE,CAAA;QAClC,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAA;QAE/B,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAA;QAClC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"config-cmd.js","sourceRoot":"","sources":["../../src/commands/config-cmd.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
CHANGED
|
@@ -16,10 +16,10 @@ export function loadCliConfig(cliOpts) {
|
|
|
16
16
|
// ignore invalid config file
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
|
-
// Priority: CLI flags > env vars > config file
|
|
20
|
-
const apiUrl = process.env.TASKAPP_API_URL || fileConfig.apiUrl;
|
|
19
|
+
// Priority: CLI flags > env vars > config file > default
|
|
20
|
+
const apiUrl = process.env.TASKAPP_API_URL || fileConfig.apiUrl || 'https://agentpm.app';
|
|
21
21
|
const apiKey = cliOpts.apiKey || process.env.TASKAPP_API_KEY || fileConfig.apiKey;
|
|
22
|
-
if (!
|
|
22
|
+
if (!apiKey) {
|
|
23
23
|
console.error('Error: Not configured. Run: agentpm login');
|
|
24
24
|
process.exit(1);
|
|
25
25
|
}
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAE9C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,iBAAiB,CAAC,CAAA;AAQtD,MAAM,UAAU,aAAa;IAC3B,OAAO,WAAW,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAG7B;IACC,IAAI,UAAU,GAAc,EAAE,CAAA;IAC9B,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAA;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,6BAA6B;QAC/B,CAAC;IACH,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAE9C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,iBAAiB,CAAC,CAAA;AAQtD,MAAM,UAAU,aAAa;IAC3B,OAAO,WAAW,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAG7B;IACC,IAAI,UAAU,GAAc,EAAE,CAAA;IAC9B,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAA;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,6BAA6B;QAC/B,CAAC;IACH,CAAC;IAED,yDAAyD;IACzD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,UAAU,CAAC,MAAM,IAAI,qBAAqB,CAAA;IACxF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,UAAU,CAAC,MAAM,CAAA;IAEjF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAA;QAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE5B,kCAAkC;IAClC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,UAAU,CAAC,cAAc,CAAA;IAC5F,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,OAAO,CAAA;IACxC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAA0B;IACvD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAA;IAC5D,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,+FAA+F,CAAC,CAAA;QAC9G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
|
package/package.json
CHANGED
|
@@ -40,27 +40,22 @@ export function registerConfigCommand(program: Command): void {
|
|
|
40
40
|
|
|
41
41
|
console.error('AgentPM CLI Login')
|
|
42
42
|
console.error('─'.repeat(40))
|
|
43
|
+
console.error('Get your API Key from: Settings → APIキー管理\n')
|
|
43
44
|
|
|
44
45
|
const config: Record<string, string> = { ...existing }
|
|
45
46
|
|
|
46
|
-
const apiUrl = await prompt('API URL', existing.apiUrl || undefined)
|
|
47
|
-
if (apiUrl) config.apiUrl = apiUrl
|
|
48
|
-
|
|
49
|
-
console.error('\nPaste your API Key from Web UI → Settings → API Keys:')
|
|
50
47
|
const apiKey = await prompt('API Key', existing.apiKey ? maskSecret(existing.apiKey) : undefined)
|
|
51
48
|
if (apiKey && !apiKey.includes('...')) {
|
|
52
49
|
config.apiKey = apiKey
|
|
53
50
|
}
|
|
54
51
|
|
|
55
|
-
|
|
56
|
-
|
|
52
|
+
if (!config.apiUrl) {
|
|
53
|
+
config.apiUrl = 'https://agentpm.app'
|
|
54
|
+
}
|
|
57
55
|
|
|
58
56
|
writeFileSync(configPath, JSON.stringify(config, null, 2) + '\n')
|
|
59
57
|
console.error(`\n✓ Config saved to ${configPath}`)
|
|
60
|
-
|
|
61
|
-
if (config.apiKey || existing.apiKey) {
|
|
62
|
-
console.error('✓ Run `agentpm space list` to verify your setup')
|
|
63
|
-
}
|
|
58
|
+
console.error('✓ Run `agentpm space list` to verify your setup')
|
|
64
59
|
})
|
|
65
60
|
|
|
66
61
|
// agentpm config — advanced config management
|
package/src/config.ts
CHANGED
|
@@ -28,11 +28,11 @@ export function loadCliConfig(cliOpts: {
|
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
// Priority: CLI flags > env vars > config file
|
|
32
|
-
const apiUrl = process.env.TASKAPP_API_URL || fileConfig.apiUrl
|
|
31
|
+
// Priority: CLI flags > env vars > config file > default
|
|
32
|
+
const apiUrl = process.env.TASKAPP_API_URL || fileConfig.apiUrl || 'https://agentpm.app'
|
|
33
33
|
const apiKey = cliOpts.apiKey || process.env.TASKAPP_API_KEY || fileConfig.apiKey
|
|
34
34
|
|
|
35
|
-
if (!
|
|
35
|
+
if (!apiKey) {
|
|
36
36
|
console.error('Error: Not configured. Run: agentpm login')
|
|
37
37
|
process.exit(1)
|
|
38
38
|
}
|