@pmate/cli 0.5.4 → 0.6.0

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.
@@ -1,20 +1,80 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.OssCommandHandler = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const node_fs_1 = require("node:fs");
6
+ const node_path_1 = tslib_1.__importDefault(require("node:path"));
7
+ const promises_1 = require("node:readline/promises");
4
8
  const cli_1 = require("../cli");
5
9
  const AliyunService_1 = require("../services/AliyunService");
6
10
  class OssCommandHandler {
7
11
  async handle(args) {
8
- if (args.action !== "list") {
9
- throw new Error(`Unsupported oss action: ${args.action}`);
12
+ if (args.action === "list") {
13
+ const buckets = await AliyunService_1.AliyunService.listBuckets();
14
+ if (buckets.length === 0) {
15
+ cli_1.ui.warn("No buckets found for current access key.");
16
+ return;
17
+ }
18
+ for (const bucket of buckets) {
19
+ cli_1.ui.info(bucket);
20
+ }
21
+ return;
10
22
  }
23
+ const resolvedFile = node_path_1.default.resolve(process.cwd(), args.filePath);
24
+ this.assertFile(resolvedFile);
25
+ const objectKey = this.normalizeObjectKey(args.objectKey);
11
26
  const buckets = await AliyunService_1.AliyunService.listBuckets();
12
27
  if (buckets.length === 0) {
13
28
  cli_1.ui.warn("No buckets found for current access key.");
14
29
  return;
15
30
  }
16
- for (const bucket of buckets) {
17
- cli_1.ui.info(bucket);
31
+ const rl = (0, promises_1.createInterface)({
32
+ input: process.stdin,
33
+ output: process.stdout,
34
+ });
35
+ try {
36
+ const bucket = await this.promptBucketSelection(rl, buckets);
37
+ await AliyunService_1.AliyunService.uploadFile(resolvedFile, bucket, objectKey);
38
+ }
39
+ finally {
40
+ rl.close();
41
+ }
42
+ }
43
+ assertFile(filePath) {
44
+ if (!(0, node_fs_1.existsSync)(filePath)) {
45
+ throw new Error(`File not found: ${filePath}`);
46
+ }
47
+ const stat = (0, node_fs_1.statSync)(filePath);
48
+ if (!stat.isFile()) {
49
+ throw new Error(`Not a file: ${filePath}`);
50
+ }
51
+ }
52
+ normalizeObjectKey(value) {
53
+ const normalized = value.trim().replace(/^\/+/, "");
54
+ if (!normalized) {
55
+ throw new Error("Object key cannot be empty.");
56
+ }
57
+ return normalized;
58
+ }
59
+ async promptBucketSelection(rl, buckets) {
60
+ cli_1.ui.title("Available buckets:");
61
+ buckets.forEach((bucket, index) => {
62
+ cli_1.ui.plain(`${index + 1}) ${bucket}`);
63
+ });
64
+ const normalized = buckets.map((bucket) => bucket.toLowerCase());
65
+ while (true) {
66
+ const answer = (await rl.question(`Select bucket (1-${buckets.length}): `))
67
+ .trim()
68
+ .toLowerCase();
69
+ const index = Number.parseInt(answer, 10);
70
+ if (Number.isFinite(index) && index >= 1 && index <= buckets.length) {
71
+ return buckets[index - 1];
72
+ }
73
+ const nameIndex = normalized.indexOf(answer);
74
+ if (nameIndex >= 0) {
75
+ return buckets[nameIndex];
76
+ }
77
+ cli_1.ui.warn("Please choose a valid bucket number or name.");
18
78
  }
19
79
  }
20
80
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OssCommandHandler.js","sourceRoot":"","sources":["../../src/commands/OssCommandHandler.ts"],"names":[],"mappings":";;;AAAA,gCAA2B;AAC3B,6DAAyD;AAGzD,MAAa,iBAAiB;IAC5B,KAAK,CAAC,MAAM,CAAC,IAAoB;QAC/B,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QAC3D,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,6BAAa,CAAC,WAAW,EAAE,CAAA;QACjD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,QAAE,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAA;YACnD,OAAM;QACR,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,QAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;CACF;AAhBD,8CAgBC"}
1
+ {"version":3,"file":"OssCommandHandler.js","sourceRoot":"","sources":["../../src/commands/OssCommandHandler.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,10 @@ class PrCommandHandler {
37
37
  });
38
38
  this.assertNonEmpty("PR title", suggestion.prTitle);
39
39
  this.assertNonEmpty("Commit message", suggestion.commitMessage);
40
+ const prTitle = normalizePrTitle(suggestion.prTitle);
41
+ if (prTitle !== suggestion.prTitle.trim()) {
42
+ cli_1.ui.info("Normalized PR title", prTitle);
43
+ }
40
44
  const headBranch = await this.ensureWorkBranch(context, suggestion);
41
45
  if (headBranch !== context.currentBranch) {
42
46
  existingPrUrl = await this.findExistingPrUrl(headBranch);
@@ -44,7 +48,7 @@ class PrCommandHandler {
44
48
  await this.commitIfNeeded(suggestion.commitMessage);
45
49
  await this.rebaseOntoBase(context.baseBranch);
46
50
  await this.pushBranchIfNeeded(headBranch, context.baseBranch);
47
- await this.ensurePr(existingPrUrl, context.baseBranch, headBranch, suggestion.prTitle);
51
+ await this.ensurePr(existingPrUrl, context.baseBranch, headBranch, prTitle);
48
52
  }
49
53
  async handleCommitOnly() {
50
54
  const context = await this.getRepoContext();
@@ -97,7 +101,7 @@ class PrCommandHandler {
97
101
  if (!aheadLog.trim()) {
98
102
  throw new Error("No commits to include in a PR.");
99
103
  }
100
- const prTitle = this.getPrTitleFromLog(aheadLog);
104
+ const prTitle = normalizePrTitle(this.getPrTitleFromLog(aheadLog));
101
105
  const prBody = await this.buildPrBody(context.baseBranch);
102
106
  await this.pushBranchIfNeeded(context.currentBranch, context.baseBranch);
103
107
  await this.createPr(context.baseBranch, context.currentBranch, prTitle, prBody);
@@ -196,6 +200,8 @@ class PrCommandHandler {
196
200
  const prompt = [
197
201
  "You are an assistant that helps craft PR metadata.",
198
202
  "Return ONLY valid JSON with keys: prTitle, branchName, commitMessage.",
203
+ "prTitle MUST start with exactly one of: 'feat: ', 'fix: ', 'chore: ' (lowercase, colon, single space).",
204
+ "Do not include scopes like feat(scope): in prTitle.",
199
205
  "branchName should be lowercase and use slashes, e.g. feature/add-thing.",
200
206
  "commitMessage should be concise (imperative) and under 72 chars.",
201
207
  "Do not include tool or product names like 'pmate' or phrases like 'Created by Pmate'.",
@@ -498,4 +504,42 @@ function sanitizeBranchName(value) {
498
504
  .replace(/--+/g, "-")
499
505
  .replace(/^-+|-+$/g, "");
500
506
  }
507
+ function normalizePrTitle(raw) {
508
+ var _a;
509
+ const trimmed = raw.trim();
510
+ if (!trimmed) {
511
+ return trimmed;
512
+ }
513
+ const typed = trimmed.match(/^(feat|fix|chore)(?:\([^)]+\))?:\s*(.*)$/i);
514
+ if (typed) {
515
+ const type = typed[1].toLowerCase();
516
+ const rest = ((_a = typed[2]) !== null && _a !== void 0 ? _a : "").trim();
517
+ if (!rest) {
518
+ throw new Error("PR title cannot be empty after the type prefix.");
519
+ }
520
+ return `${type}: ${rest}`;
521
+ }
522
+ const rest = stripConventionalPrefix(trimmed);
523
+ const type = inferPrTitleType(rest);
524
+ return `${type}: ${rest}`;
525
+ }
526
+ function stripConventionalPrefix(value) {
527
+ var _a;
528
+ const match = value.match(/^([a-z][a-z0-9-]{1,15})(?:\([^)]+\))?:\s+(.*)$/i);
529
+ if (!match) {
530
+ return value.trim();
531
+ }
532
+ const rest = ((_a = match[2]) !== null && _a !== void 0 ? _a : "").trim();
533
+ return rest || value.trim();
534
+ }
535
+ function inferPrTitleType(title) {
536
+ const t = title.toLowerCase();
537
+ if (/\b(fix|bug|error|crash|regress|regression|hotfix)\b/.test(t)) {
538
+ return "fix";
539
+ }
540
+ if (/\b(chore|refactor|deps|dependency|dependencies|bump|upgrade|update|ci|build|tooling|lint|format)\b/.test(t)) {
541
+ return "chore";
542
+ }
543
+ return "feat";
544
+ }
501
545
  //# sourceMappingURL=PrCommandHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PrCommandHandler.js","sourceRoot":"","sources":["../../src/commands/PrCommandHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PrCommandHandler.js","sourceRoot":"","sources":["../../src/commands/PrCommandHandler.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -1 +1,12 @@
1
+ export type LinearAccountConfig = {
2
+ title: string;
3
+ apiKey: string;
4
+ teamId?: string;
5
+ teamKey?: string;
6
+ };
7
+ export type PmateUserConfig = {
8
+ env?: Record<string, string>;
9
+ linear?: LinearAccountConfig[];
10
+ };
1
11
  export declare function loadPmateEnv(): void;
12
+ export declare function loadPmateConfig(): PmateUserConfig;
package/dist/config.js CHANGED
@@ -1,28 +1,118 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.loadPmateEnv = loadPmateEnv;
4
+ exports.loadPmateConfig = loadPmateConfig;
4
5
  const tslib_1 = require("tslib");
5
6
  const node_fs_1 = require("node:fs");
6
7
  const node_os_1 = tslib_1.__importDefault(require("node:os"));
7
8
  const node_path_1 = tslib_1.__importDefault(require("node:path"));
8
9
  const dotenv_1 = require("dotenv");
10
+ const yaml_1 = tslib_1.__importDefault(require("yaml"));
11
+ let cachedConfig;
9
12
  function loadPmateEnv() {
10
- const configPath = node_path_1.default.join(node_os_1.default.homedir(), '.pmate', 'config');
11
- if (!(0, node_fs_1.existsSync)(configPath)) {
12
- return;
13
- }
14
- const raw = (0, node_fs_1.readFileSync)(configPath, 'utf8');
15
- try {
16
- const parsed = (0, dotenv_1.parse)(raw);
17
- for (const [key, value] of Object.entries(parsed)) {
18
- if (process.env[key] === undefined) {
19
- process.env[key] = value;
13
+ var _a;
14
+ const config = loadPmateConfig();
15
+ const env = (_a = config.env) !== null && _a !== void 0 ? _a : {};
16
+ for (const [key, value] of Object.entries(env)) {
17
+ if (process.env[key] === undefined) {
18
+ process.env[key] = value;
19
+ }
20
+ }
21
+ }
22
+ function loadPmateConfig() {
23
+ var _a;
24
+ if (cachedConfig !== undefined) {
25
+ return cachedConfig !== null && cachedConfig !== void 0 ? cachedConfig : {};
26
+ }
27
+ const pmateDir = node_path_1.default.join(node_os_1.default.homedir(), ".pmate");
28
+ const yamlPath = node_path_1.default.join(pmateDir, "config.yaml");
29
+ const legacyPath = node_path_1.default.join(pmateDir, "config");
30
+ let yamlConfig = null;
31
+ let legacyConfig = null;
32
+ if ((0, node_fs_1.existsSync)(yamlPath)) {
33
+ const raw = (0, node_fs_1.readFileSync)(yamlPath, "utf8");
34
+ try {
35
+ yamlConfig = normalizeUserConfig(yaml_1.default.parse(raw), `Invalid YAML in ${yamlPath}`);
36
+ }
37
+ catch (error) {
38
+ const message = error instanceof Error ? error.message : String(error);
39
+ throw new Error(`Invalid YAML in ${yamlPath}: ${message}`);
40
+ }
41
+ }
42
+ if ((0, node_fs_1.existsSync)(legacyPath)) {
43
+ const raw = (0, node_fs_1.readFileSync)(legacyPath, "utf8");
44
+ try {
45
+ const env = (0, dotenv_1.parse)(raw);
46
+ legacyConfig = { env };
47
+ }
48
+ catch (error) {
49
+ const message = error instanceof Error ? error.message : String(error);
50
+ throw new Error(`Invalid dotenv in ${legacyPath}: ${message}`);
51
+ }
52
+ }
53
+ const merged = {};
54
+ if ((legacyConfig === null || legacyConfig === void 0 ? void 0 : legacyConfig.env) && Object.keys(legacyConfig.env).length > 0) {
55
+ merged.env = { ...legacyConfig.env };
56
+ }
57
+ if ((yamlConfig === null || yamlConfig === void 0 ? void 0 : yamlConfig.env) && Object.keys(yamlConfig.env).length > 0) {
58
+ merged.env = { ...((_a = merged.env) !== null && _a !== void 0 ? _a : {}), ...yamlConfig.env };
59
+ }
60
+ if ((yamlConfig === null || yamlConfig === void 0 ? void 0 : yamlConfig.linear) && yamlConfig.linear.length > 0) {
61
+ merged.linear = yamlConfig.linear;
62
+ }
63
+ cachedConfig = merged;
64
+ return merged;
65
+ }
66
+ function normalizeUserConfig(value, context) {
67
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
68
+ throw new Error(`${context}: expected a YAML object at the root`);
69
+ }
70
+ const root = value;
71
+ const config = {};
72
+ const envValue = root.env;
73
+ if (envValue !== undefined) {
74
+ if (!envValue || typeof envValue !== "object" || Array.isArray(envValue)) {
75
+ throw new Error(`${context}: env must be an object map`);
76
+ }
77
+ const env = {};
78
+ for (const [key, raw] of Object.entries(envValue)) {
79
+ if (typeof raw === "string") {
80
+ env[key] = raw;
81
+ }
82
+ else if (raw === null || raw === undefined) {
83
+ continue;
84
+ }
85
+ else {
86
+ env[key] = String(raw);
20
87
  }
21
88
  }
89
+ config.env = env;
22
90
  }
23
- catch (error) {
24
- const message = error instanceof Error ? error.message : String(error);
25
- throw new Error(`Invalid dotenv in ${configPath}: ${message}`);
91
+ const linearValue = root.linear;
92
+ if (linearValue !== undefined) {
93
+ if (!Array.isArray(linearValue)) {
94
+ throw new Error(`${context}: linear must be an array`);
95
+ }
96
+ const linear = [];
97
+ for (const entry of linearValue) {
98
+ if (!entry || typeof entry !== "object" || Array.isArray(entry)) {
99
+ throw new Error(`${context}: each linear entry must be an object`);
100
+ }
101
+ const item = entry;
102
+ const title = typeof item.title === "string" ? item.title.trim() : "";
103
+ const apiKey = typeof item.apiKey === "string" ? item.apiKey.trim() : "";
104
+ if (!title) {
105
+ throw new Error(`${context}: linear entry missing title`);
106
+ }
107
+ if (!apiKey) {
108
+ throw new Error(`${context}: linear entry "${title}" missing apiKey`);
109
+ }
110
+ const teamId = typeof item.teamId === "string" ? item.teamId.trim() : undefined;
111
+ const teamKey = typeof item.teamKey === "string" ? item.teamKey.trim() : undefined;
112
+ linear.push({ title, apiKey, teamId, teamKey });
113
+ }
114
+ config.linear = linear;
26
115
  }
116
+ return config;
27
117
  }
28
118
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;AAKA,oCAkBC;;AAvBD,qCAAmD;AACnD,8DAAyB;AACzB,kEAA6B;AAC7B,mCAA+B;AAE/B,SAAgB,YAAY;IAC1B,MAAM,UAAU,GAAG,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/D,IAAI,CAAC,IAAA,oBAAU,EAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,MAAM,GAAG,GAAG,IAAA,sBAAY,EAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAA,cAAK,EAAC,GAAG,CAAC,CAAC;QAC1B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBACnC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,qBAAqB,UAAU,KAAK,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -22,6 +22,7 @@ const EnvCommandHandler_1 = require("./commands/EnvCommandHandler");
22
22
  const PrCommandHandler_1 = require("./commands/PrCommandHandler");
23
23
  const SummaryCommandHandler_1 = require("./commands/SummaryCommandHandler");
24
24
  const LinearCommandHandler_1 = require("./commands/LinearCommandHandler");
25
+ const NotionCommandHandler_1 = require("./commands/NotionCommandHandler");
25
26
  const pkg = JSON.parse((0, node_fs_1.readFileSync)(node_path_1.default.resolve(__dirname, '..', 'package.json'), 'utf8'));
26
27
  (0, config_1.loadPmateEnv)();
27
28
  const HELP_TEXT = [
@@ -56,6 +57,7 @@ const HELP_TEXT = [
56
57
  ` ${chalk_1.default.cyan('summary')} Summarize a GitHub PR with AI`,
57
58
  ` ${chalk_1.default.gray(' --pr <id> [--cwd <dir>]')}`,
58
59
  ` ${chalk_1.default.cyan('linear')} Create Linear issues`,
60
+ ` ${chalk_1.default.gray(' (default) create via REPL')}`,
59
61
  ` ${chalk_1.default.gray(' create --repl [--cwd <dir>]')}`,
60
62
  ` ${chalk_1.default.gray(' create --title <title> [--desc <markdown>]')}`,
61
63
  ` ${chalk_1.default.gray(' [--team-id <id>|--team-key <key>] [--priority <0-4>]')}`,
@@ -64,8 +66,14 @@ const HELP_TEXT = [
64
66
  ` ${chalk_1.default.gray(' sub-issues <issue> [--cwd <dir>]')}`,
65
67
  ` ${chalk_1.default.gray(' --pr [--cwd <dir>] (legacy)')}`,
66
68
  ` ${chalk_1.default.gray(' --repl [--cwd <dir>] (legacy)')}`,
69
+ ` ${chalk_1.default.gray(' --screen-shot [--cwd <dir>] (legacy)')}`,
70
+ ` ${chalk_1.default.cyan('notion')} View or update Notion pages`,
71
+ ` ${chalk_1.default.gray(' view <page-id|url>')}`,
72
+ ` ${chalk_1.default.gray(' update <page-id|url> --content <text> [--append]')}`,
73
+ ` ${chalk_1.default.gray(' update <page-id|url> --file <path> [--append]')}`,
67
74
  ` ${chalk_1.default.cyan('oss')} Manage OSS buckets`,
68
75
  ` ${chalk_1.default.gray(' list')}`,
76
+ ` ${chalk_1.default.gray(' upload --file <path> --key <key>')}`,
69
77
  ].join('\n');
70
78
  function parseArgs(argv) {
71
79
  const result = { help: false, version: false, rest: [] };
@@ -159,6 +167,9 @@ function parseCommandArgs(args) {
159
167
  if (args.rest[0] === 'linear') {
160
168
  return parseLinearArgs(args.rest.slice(1));
161
169
  }
170
+ if (args.rest[0] === 'notion') {
171
+ return parseNotionArgs(args.rest.slice(1));
172
+ }
162
173
  return { type: types_1.Command.None };
163
174
  }
164
175
  function parseAddDnsArgs(tokens) {
@@ -307,15 +318,39 @@ function parseOssArgs(tokens) {
307
318
  const rest = [...tokens];
308
319
  const action = rest.shift();
309
320
  if (!action) {
310
- throw new Error('Missing oss action. Usage: oss list');
321
+ throw new Error('Missing oss action. Usage: oss list|upload');
322
+ }
323
+ if (action === 'list') {
324
+ if (rest.length > 0) {
325
+ throw new Error(`Too many arguments for oss ${action}`);
326
+ }
327
+ return { type: types_1.Command.Oss, action };
311
328
  }
312
- if (action !== 'list') {
329
+ if (action !== 'upload') {
313
330
  throw new Error(`Unknown oss action: ${action}`);
314
331
  }
315
- if (rest.length > 0) {
316
- throw new Error(`Too many arguments for oss ${action}`);
332
+ let filePath;
333
+ let objectKey;
334
+ while (rest.length > 0) {
335
+ const token = rest.shift();
336
+ switch (token) {
337
+ case '--file':
338
+ filePath = requireValue(rest, token);
339
+ break;
340
+ case '--key':
341
+ objectKey = requireValue(rest, token);
342
+ break;
343
+ default:
344
+ throw new Error(`Unknown oss option: ${token}`);
345
+ }
317
346
  }
318
- return { type: types_1.Command.Oss, action };
347
+ if (!filePath) {
348
+ throw new Error('Missing required option --file for oss upload');
349
+ }
350
+ if (!objectKey) {
351
+ throw new Error('Missing required option --key for oss upload');
352
+ }
353
+ return { type: types_1.Command.Oss, action, filePath, objectKey };
319
354
  }
320
355
  function parseEnvArgs(tokens) {
321
356
  const rest = [...tokens];
@@ -421,6 +456,15 @@ function parseSummaryArgs(tokens) {
421
456
  function parseLinearArgs(tokens) {
422
457
  const rest = [...tokens];
423
458
  const first = rest[0];
459
+ if (!first) {
460
+ return {
461
+ type: types_1.Command.Linear,
462
+ action: 'create',
463
+ mode: 'repl',
464
+ priority: 3,
465
+ cwd: process.cwd(),
466
+ };
467
+ }
424
468
  if (first === 'create') {
425
469
  return parseLinearCreateArgs(rest.slice(1));
426
470
  }
@@ -572,6 +616,7 @@ function parseLinearLegacyArgs(tokens) {
572
616
  const rest = [...tokens];
573
617
  let usePr = false;
574
618
  let useRepl = false;
619
+ let useScreenshot = false;
575
620
  let cwd = process.cwd();
576
621
  while (rest.length > 0) {
577
622
  const token = rest.shift();
@@ -582,6 +627,10 @@ function parseLinearLegacyArgs(tokens) {
582
627
  case '--repl':
583
628
  useRepl = true;
584
629
  break;
630
+ case '--screen-shot':
631
+ case '--screenshot':
632
+ useScreenshot = true;
633
+ break;
585
634
  case '--cwd':
586
635
  cwd = requireValue(rest, token);
587
636
  break;
@@ -589,11 +638,18 @@ function parseLinearLegacyArgs(tokens) {
589
638
  throw new Error(`Unknown linear option: ${token}`);
590
639
  }
591
640
  }
592
- if (usePr && useRepl) {
641
+ const actionCount = [usePr, useRepl, useScreenshot].filter(Boolean).length;
642
+ if (actionCount > 1) {
593
643
  throw new Error('Only one linear action is allowed.');
594
644
  }
595
- if (!usePr && !useRepl) {
596
- throw new Error('Missing linear action. Use "linear create" or --pr/--repl.');
645
+ if (!usePr && !useRepl && !useScreenshot) {
646
+ return {
647
+ type: types_1.Command.Linear,
648
+ action: 'create',
649
+ mode: 'repl',
650
+ priority: 3,
651
+ cwd,
652
+ };
597
653
  }
598
654
  if (usePr) {
599
655
  return {
@@ -602,6 +658,15 @@ function parseLinearLegacyArgs(tokens) {
602
658
  cwd,
603
659
  };
604
660
  }
661
+ if (useScreenshot) {
662
+ return {
663
+ type: types_1.Command.Linear,
664
+ action: 'create',
665
+ mode: 'screenshot',
666
+ priority: 3,
667
+ cwd,
668
+ };
669
+ }
605
670
  return {
606
671
  type: types_1.Command.Linear,
607
672
  action: 'create',
@@ -617,6 +682,56 @@ function parseLinearPriority(value) {
617
682
  }
618
683
  return parsed;
619
684
  }
685
+ function parseNotionArgs(tokens) {
686
+ const rest = [...tokens];
687
+ const action = rest.shift();
688
+ if (!action) {
689
+ throw new Error('Missing notion action. Usage: notion view|update');
690
+ }
691
+ if (action === 'view') {
692
+ const pageId = rest.shift();
693
+ if (!pageId) {
694
+ throw new Error('Missing page id. Usage: notion view <page-id|url>.');
695
+ }
696
+ if (rest.length > 0) {
697
+ throw new Error('Too many arguments for notion view.');
698
+ }
699
+ return { type: types_1.Command.Notion, action, pageId };
700
+ }
701
+ if (action !== 'update') {
702
+ throw new Error(`Unknown notion action: ${action}`);
703
+ }
704
+ const pageId = rest.shift();
705
+ if (!pageId) {
706
+ throw new Error('Missing page id. Usage: notion update <page-id|url> --content <text> [--append].');
707
+ }
708
+ let content;
709
+ let filePath;
710
+ let append = false;
711
+ while (rest.length > 0) {
712
+ const token = rest.shift();
713
+ switch (token) {
714
+ case '--content':
715
+ content = requireValue(rest, token);
716
+ break;
717
+ case '--file':
718
+ filePath = requireValue(rest, token);
719
+ break;
720
+ case '--append':
721
+ append = true;
722
+ break;
723
+ default:
724
+ throw new Error(`Unknown notion option: ${token}`);
725
+ }
726
+ }
727
+ if (content && filePath) {
728
+ throw new Error('Use either --content or --file, not both.');
729
+ }
730
+ if (!content && !filePath) {
731
+ throw new Error('Missing content. Use --content <text> or --file <path>.');
732
+ }
733
+ return { type: types_1.Command.Notion, action, pageId, content, filePath, append };
734
+ }
620
735
  function requireValue(tokens, optionName) {
621
736
  const value = tokens.shift();
622
737
  if (!value) {
@@ -701,6 +816,11 @@ async function main() {
701
816
  await handler.handle(commandArgs);
702
817
  return;
703
818
  }
819
+ case types_1.Command.Notion: {
820
+ const handler = new NotionCommandHandler_1.NotionCommandHandler();
821
+ await handler.handle(commandArgs);
822
+ return;
823
+ }
704
824
  case types_1.Command.Oss: {
705
825
  const handler = new OssCommandHandler_1.OssCommandHandler();
706
826
  await handler.handle(commandArgs);