Commit Graph

202 Commits

Author SHA1 Message Date
林晨 (Leo Cheng) c4a0ac1f13
feat(pr): surface merged_at in pr +view
Signed-off-by: 林晨 (Leo Cheng) <chengkelfan@qq.com>
2026-07-08 12:43:32 +08:00
林晨 (Leo Cheng) 6ae52f40f7
fix(label): paginate label lookup in +update to avoid clobbering fields
Signed-off-by: 林晨 (Leo Cheng) <chengkelfan@qq.com>
2026-07-08 12:11:48 +08:00
林晨 (Leo Cheng) 6e71ff9941
feat(pr): add pr +edit to update an open pull request
Signed-off-by: 林晨 (Leo Cheng) <chengkelfan@qq.com>
2026-07-08 12:11:47 +08:00
林晨 (Leo Cheng) 8f5cc1637d
feat(issue): add issue +reopen to reopen a closed issue
Signed-off-by: 林晨 (Leo Cheng) <chengkelfan@qq.com>
2026-07-08 12:11:47 +08:00
林晨 (Leo Cheng) e4b03e0053
fix(workflow): use status/category list filters in health and report fetchers
Signed-off-by: 林晨 (Leo Cheng) <chengkelfan@qq.com>
2026-07-08 12:11:46 +08:00
林晨 (Leo Cheng) 17ec98f198
fix(i18n): add missing cmd.ignore.short group description key
Signed-off-by: 林晨 (Leo Cheng) <chengkelfan@qq.com>
2026-07-08 12:11:33 +08:00
林晨 (Leo Cheng) 50bcf5bf68
feat(browse): add browse shortcut group to open repo pages in a browser
Signed-off-by: 林晨 (Leo Cheng) <chengkelfan@qq.com>
2026-07-08 03:06:54 +08:00
Mengz 5c16a4a70e feat: 新增 shell 自动补全命令 2026-07-07 14:52:28 +08:00
laurencewannamaker 95a8a37876 fix(output): --format table 支持资源包裹列表响应(此前 list 命令表格从不生效)
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-07-05 23:29:15 +00:00
laurencewannamaker 4913cf5319 fix(output): 全局提取 flag 改名 --jq,避免与 api 子命令 --query(查询参数)语义冲突
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-07-05 23:26:07 +00:00
laurencewannamaker 497bd6a071 feat(output): 全局 --query/-q 点分路径输出字段提取(零依赖,对标 gh --jq)
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-07-05 23:22:03 +00:00
farmyobutu5233 2dd580c208 fix: branch/pr/release default-branch awareness (drop hardcoded master)
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-07-05 12:35:16 +00:00
farmyobutu5233 fcde26823b fix(repo): +tree respects repository default branch when --ref omitted
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-07-05 12:27:01 +00:00
farmyobutu5233 f43afa75a6 fix(milestone): make +create --description/--due-date optional to match platform API
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-07-05 12:06:21 +00:00
Mengz 37e736c4d8 feat(user): add SSH key shortcuts 2026-07-04 09:06:33 +08:00
NeeNe 80f56e8d71 feat(workflow): replace raw api calls with shortcut-backed fetches 2026-07-03 11:28:52 +08:00
NeeNe 906bdb9d6d feat(org): add organization team shortcuts 2026-07-03 10:17:42 +08:00
NeeNe 2138fb16d7 feat(pr): add merge readiness and branch helper shortcuts 2026-07-02 14:19:55 +08:00
NeeNe 5f2dba4974 feat(label): add guarded batch label shortcuts 2026-07-02 14:07:55 +08:00
NeeNe 0806f3096c feat(ci): add repository CI control shortcuts 2026-07-02 13:30:28 +08:00
Mengz c3dc86511d feat(pr): 增加行级审查评论快捷命令 2026-07-01 11:44:03 +08:00
Mengz 898af8cd80 feat: 新增 Release 资产下载命令 2026-07-01 11:44:03 +08:00
Mengz 6cebb6fbf9 feat(compare): 新增 compare 汇总与提交筛选命令 2026-07-01 11:44:03 +08:00
weidongde 487f9132e2 feat(repo): 添加仓库设置快捷命令
新增 11 个仓库管理命令:
- repo +detail: 获取仓库详情
- repo +simple: 获取仓库简要信息
- repo +settings: 获取仓库设置
- repo +units: 获取导航单元列表
- repo +units-update: 更新导航单元
- repo +topics: 获取项目标签列表
- repo +topic-add: 添加项目标签
- repo +topic-delete: 删除项目标签
- repo +transfer-orgs: 获取可转移组织列表
- repo +transfer: 申请转移仓库
- repo +transfer-cancel: 取消转移申请

包含完整的单元测试和变更文档
2026-06-26 17:13:13 +08:00
Mengz d408443c84 feat(repo): 增加读取仓库任意文件的 +file 命令 2026-06-26 15:37:21 +08:00
weidongde 7f7f24d5fb feat(release): add latest and auto-notes shortcuts
添加两个新的 Release 相关命令:

1. release +latest: 获取最新发布版本
   - 默认跳过草稿和预发布版本
   - 支持 --include-prerelease 和 --include-draft 参数

2. release +auto-notes: 自动生成 Release Notes
   - 根据提交信息自动分类(feat/fix/其他)
   - 包含已关闭的 Issue 列表
   - 支持 --from-tag 指定起始标签
   - 支持 JSON 格式输出统计信息

包含完整的单元测试和文档更新。
2026-06-26 15:22:41 +08:00
weidongde 1b6d8733d1 feat(issue): 新增批量重开、标签、指派、评论、导出、导入命令
新增 6 个 Issue 批量操作快捷命令:
- batch-reopen: 按Issue编号批量重新开启已关闭的Issue
- batch-label: 按API ID批量添加/移除Issue标签
- batch-assign: 按API ID批量指派/取消指派负责人
- batch-comment: 批量为多个Issue添加评论
- batch-export: 导出Issue到CSV/JSON文件,支持多种过滤条件
- batch-import: 从CSV文件批量创建Issue

所有命令均支持 --dry-run 预览模式。包含单元测试和更新的Skill文档。
2026-06-26 14:14:22 +08:00
co63oc fa956dcd92 feat(pr): add --login flag to filter list by issue author 2026-06-26 09:16:01 +08:00
Mengz c9aea1d983 feat(pr): 在列表中显示 PR 编号 2026-06-25 18:13:39 +08:00
Mengz ffb35a4f02 feat(pr): 支持按编号搜索 PR 2026-06-25 18:13:39 +08:00
Mengz ac211ac4e9 fix(api): 补齐单次请求模板变量与请求头支持 2026-06-25 16:49:58 +08:00
Mengz 7b86b1affb feat(workflow): 新增陈旧队列扫描命令 2026-06-24 17:40:47 +08:00
wangyue789 4a263c1ec0 feat(repo): add mirror sync shortcut 2026-06-23 19:52:37 +08:00
wangyue789 0e149b3cbe feat(commit): add commit inspection shortcuts 2026-06-23 19:52:08 +08:00
Mengz b0a1f0e566 feat: add notification shortcuts 2026-06-22 12:54:45 +08:00
Mengz 8d61e4723f feat(repo): add repository units shortcuts 2026-06-22 12:52:14 +08:00
Mengz bfb4ba98bb feat: add git tag shortcut group 2026-06-22 12:50:53 +08:00
Mengz c9d0aad59a feat(trace): 新增代码溯源分析快捷命令 2026-06-22 12:45:58 +08:00
Mengz cea318d179 feat: 新增 Issue 批量导出命令 2026-06-22 12:44:24 +08:00
Mengz e4ed2d1b45 feat(pr): 新增审查评论管理快捷命令 2026-06-22 12:36:23 +08:00
Mengz 2367048b6f feat(issue): 完善评论管理快捷命令 2026-06-22 12:36:01 +08:00
wangyue789 58982c2bb0 feat(user): add statistics shortcuts 2026-06-22 12:32:58 +08:00
Mengz bf21056f04 feat(api): 增强单次调用模板变量与预演能力 2026-06-22 12:31:55 +08:00
Mengz e6f7cfd186 feat(repo): 补齐仓库文件读取、搜索与批量提交工作流 2026-06-22 12:31:40 +08:00
Mengz 31accd64d2 feat(repo): 新增仓库文件批量提交命令 2026-06-22 12:31:19 +08:00
wangyue789 16b9ebefdc feat(branch): add lifecycle shortcuts 2026-06-22 12:30:16 +08:00
wangyue789 4c23b8f180 feat(member): add application shortcuts 2026-06-22 12:30:16 +08:00
Mengz 9bf0258b43 feat(repo): 增强仓库转移快捷命令安全保护 2026-06-22 12:27:37 +08:00
Mengz e9936734ee feat: 新增仓库转移快捷命令 2026-06-22 12:27:37 +08:00
Mengz cf7dab27af feat(message-settings): 增加消息通知设置快捷命令 2026-06-22 11:17:07 +08:00
co63oc 2c9a8b6192 feat(shortcut): add shortcuts/wiki 2026-06-16 10:24:15 +08:00
wangyue789 bc64e59bd2 feat(ignore): add ignore template shortcuts 2026-06-16 08:21:27 +08:00
luwanzhou 2f4b7674d6 fix(output): deterministic --format table ordering and show error status code
--format table 的渲染依赖 Go map 随机遍历顺序:printMapTable 的行顺序、
以及 collectKeys 补全非优先列后 printSliceTable 的列顺序,每次运行都可能不同,
导致同一命令两次输出不一致,难以对比/diff/脚本断言。

- collectKeys:优先列之后的剩余列改为 sort.Strings 排序,顺序稳定可预期。
- printMapTable:按 collectKeys 顺序输出,行序确定且与列表表列序一致。
- 错误输出:有错误码时显示 Error [<code>]: <message>,便于区分 404/422/500。

仅稳定 table 呈现顺序并丰富错误提示,不影响 json/yaml 输出与成功数据内容。
新增单测覆盖排序、25 次渲染确定性、错误码展示。
2026-06-15 12:59:23 +08:00
luwanzhou 81d30d6741 fix(api): resolve :owner/:repo and --var placeholders in single calls
gitlink-cli api <METHOD> <PATH> 单次调用此前直接发送原始路径,不替换
REST 风格的 :owner/:repo 占位符——导致该命令自身的 Example
(api POST /:owner/:repo/issues)以及依赖该写法的 Skill/文档无法使用。

- 新增 resolveAPIPath:先按 --var 渲染 {{var}} 模板(复用批处理模板引擎),
  再用 context.ResolveOwnerRepo(--owner/--repo → git remote,与所有 shortcut
  一致)替换 :owner/:repo,最后补全前导 /。
- :owner/:repo 正则用 \b 边界避免误伤 :owner_id;ReplaceAllLiteralString
  避免 owner/repo 中的 $ 被当作正则替换引用。
- 不含占位符且无 --var 的调用行为不变。
- 更新命令 Example;新增单元测试(占位符解析、单次 --var 渲染、缺失变量报错)。

修复 Issue: api 命令单次调用不替换 :owner/:repo 占位符。
2026-06-15 12:36:58 +08:00
wangyue789 0703d3eba9 feat(issue): add batch maintenance shortcuts 2026-06-15 08:21:10 +08:00
wangyue789 044cd0e0d2 feat(branch): complete OpenAPI shortcuts 2026-06-15 08:05:02 +08:00
luwanzhou e5cb868442 feat(search): add recommended projects shortcut
Add `search +recommend`, listing the platform's recommended/featured
projects via GET /api/projects/recommend — a discovery endpoint that had
no shortcut coverage. The endpoint returns a bare JSON array; the command
normalizes it into structured data for clean output.

Includes unit tests, bilingual (en-US/zh-CN) help text, README updates,
and a change note. Verified against production gitlink.org.cn.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-15 01:42:15 +08:00
Tiger ecc5578cf4 Merge upstream/master: resolve conflicts in README.zh-CN.md and register_test.go
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-14 18:50:50 +08:00
wbtiger 8c29d98a57 Merge pull request 'feat(profile): 新增用户画像统计快捷命令' (#241) from luwanzhou/gitlink-cli:feat/profile-shortcuts into master 2026-06-14 18:32:04 +08:00
luwanzhou 29ca94db76 feat(dataset): add full dataset CRUD (view/create/update/delete-attachment)
Extend the dataset group beyond the verified project query to the full
documented contract:

- dataset +view              -> GET    /v1/{owner}/{repo}/dataset (+page/limit)
- dataset +list --ids        -> GET    /v1/project_datasets   (prod-verified)
- dataset +create            -> POST   /v1/{owner}/{repo}/dataset
- dataset +update            -> PUT    /v1/{owner}/{repo}/dataset
- dataset +delete-attachment -> DELETE /attachments/{uuid}

Quality over a bare contract port: bilingual (en-US/zh-CN) i18n help,
--dry-run preview on create/update, --yes confirmation guard on the
destructive attachment delete, and license-id validation.

Only /v1/project_datasets is currently reachable on production www; the
per-repo routes follow the published OpenAPI spec and return 404 there
until the platform deploys them (documented in the change note). Unit
tests exercise every command against a mock server.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-14 14:01:57 +08:00
luwanzhou 7f731eb04f feat(dataset): add dataset query shortcuts
Add a `dataset` shortcut group for querying GitLink research datasets,
which previously had no shortcut coverage:

- dataset +list --ids <ids>  -> GET /v1/project_datasets
- dataset +view              -> GET /v1/project_datasets (project ID
                                 resolved from --owner/--repo)

Only the platform-wide query endpoint is available on production
gitlink.org.cn; the documented per-repo dataset CRUD routes return 404
there (verified against the API), so this group wraps the query endpoint
for both listing and per-repo viewing.

Includes unit tests, bilingual (en-US/zh-CN) i18n help text, README
updates, and a change note.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-14 11:48:22 +08:00
luwanzhou da4c8c0d10 feat(profile): 新增用户画像统计快捷命令
新增只读 profile 命令组,封装此前无 shortcut 覆盖的
GitLink 用户画像统计接口:

profile +ability      -> /users/{user}/statistics/develop
profile +role         -> /users/{user}/statistics/role
profile +major        -> /users/{user}/statistics/major
profile +activity     -> /users/{user}/statistics/activity
profile +contribution -> /users/{user}/headmaps

省略 --user 时默认通过 /users/me 解析当前认证用户。
统计命令支持 --start-time/--end-time 时间窗口,
+contribution 支持 --year 参数。

包含单元测试、中英双语 i18n 帮助文本、README 更新
及变更说明文档。
2026-06-13 23:07:27 +08:00
Mengz 829dec39c5 feat(skills): 增加维护者交接与分支治理技能 2026-06-11 10:22:20 +08:00
Mengz 72eea1bc77 feat(milestone): 增加里程碑进度分析快捷命令 2026-06-11 10:00:41 +08:00
Mengz 0a5bad01c8 fix(issue): 修复详情缺失并保护更新元数据 2026-06-10 19:33:56 +08:00
Mengz 3e5f6a86af feat(user): 增加用户画像分析快捷命令 2026-06-10 19:10:37 +08:00
Mengz 365a42e790 feat(message): 增加消息中心快捷命令 2026-06-10 17:48:14 +08:00
Mengz 3dfce6f9e7 feat(release): 增加发布资产管理快捷命令 2026-06-10 17:05:02 +08:00
Mengz 104162b480 fix(pr): 补齐 pr +view 的合并与关闭时间字段 2026-06-10 16:12:13 +08:00
Mengz 6e5eaacd59 feat(workflow): 新增发布就绪度检查命令 2026-06-10 15:06:02 +08:00
Mengz 74379dbbe4 feat(workflow): 新增重复 Issue 检测命令 2026-06-10 15:02:14 +08:00
Mengz ec2cfb69e4 feat(workflow): 新增依赖风险审计命令 2026-06-10 14:57:36 +08:00
Mengz 1eee85d13f feat(workflow): 新增 PR 审查队列命令 2026-06-10 09:13:46 +08:00
Mengz 5d98b03683 feat(workflow): 新增发布说明生成命令 2026-06-10 09:04:55 +08:00
Mengz 7c46eb4083 feat(feedback): 新增反馈建议快捷命令 2026-06-09 19:50:12 +08:00
Mengz 245a3d52d7 fix: 完善仓库 README 快捷命令 2026-06-09 12:51:08 +08:00
Mengz 8219c0b6dc feat: add attachment shortcut group 2026-06-09 11:10:55 +08:00
Mengz 442f0b9df6 feat: support fork metadata in pr create 2026-06-09 11:02:29 +08:00
co63oc 17c555620b feat(shortcut): add shortcuts/ignore 2026-06-09 08:50:39 +08:00
wbtiger 462ae7b012 Merge pull request 'feat(repo): 新增 repo +tree 文件树查询命令' (#143) from ohanabi/gitlink-cli:feat/repo-tree-shortcut-final into master 2026-06-09 01:18:09 +08:00
NeeNe 21ebb2f89c chore: 打磨仓库文件树命令交付质量 2026-06-08 12:13:28 +08:00
chroe 29d1b356b4 feat: add Showcase Dashboard - interactive web demo
新增 GitLink CLI Showcase Dashboard:
- Go HTTP 服务器 + 暗色主题前端页面
- 12 个模块卡片,支持在线执行 CLI 命令
- Dockerfile 多阶段构建,一键容器化部署
- GitLink DevOps 流水线配置

文件: showcase/main.go, index.html, Dockerfile, deploy.sh, pipeline.yml
文档: doc/changes/showcase-dashboard.md
2026-06-08 12:00:12 +08:00
NeeNe 0da1d8d7bf docs: 补充仓库文件树命令变更说明 2026-06-08 11:55:09 +08:00
wangyue789 2d963ebf41 feat(release): add edit and update shortcuts 2026-06-08 08:30:21 +08:00
wbtiger 27cc58328d Merge pull request 'feat(repo): add insight shortcuts' (#59) from wangyue111/gitlink-cli:feat/repo-insight-shortcuts into master 2026-06-08 02:32:26 +08:00
wbtiger ca578a74be Merge pull request 'feat(repo): add settings and topic shortcuts' (#71) from wangyue111/gitlink-cli:feat/repo-settings-shortcuts into master 2026-06-08 02:26:54 +08:00
wbtiger dd4ed35448 Merge pull request '修正 Issue 和 PR 列表筛选' (#117) from Mengz/gitlink-cli:mengz/list-filter-fixes into master 2026-06-08 02:24:41 +08:00
wbtiger 723e698db4 Merge pull request '新增 Raw API 批处理执行器' (#124) from Mengz/gitlink-cli:mengz/api-batch-runner into master 2026-06-08 02:24:14 +08:00
wbtiger 03a9d7a942 Merge pull request '修复认证凭据 fallback 配置目录不一致' (#133) from Mengz/gitlink-cli:mengz/auth-config-dir-fallback into master 2026-06-08 02:23:06 +08:00
Mengz d6321e7af5 fix: 统一认证凭据 fallback 配置目录 2026-06-06 18:42:50 +08:00
Mengz dec10afaeb feat: 新增 CLI 自诊断命令 2026-06-06 18:11:45 +08:00
Mengz 35e50a1828 feat: 新增 Raw API 批处理执行器 2026-06-06 11:55:20 +08:00
Mengz 0b48ec90d8 fix: 修正 Issue 和 PR 列表筛选 2026-06-05 11:43:30 +08:00
wangyue789 9bfa59c7e8 feat(repo): add settings and topic shortcuts 2026-06-04 07:19:08 +08:00
wangyue789 cedd8b6263 feat(repo): add insight and interaction shortcuts 2026-06-04 07:17:13 +08:00
wangyue789 89d5321713 feat(issue): support metadata fields and id alias 2026-06-02 12:42:34 +08:00
wbtiger fb847bf13f Merge remote-tracking branch 'wangyue111/feat/pipeline-openapi-shortcuts' into _test_68_int 2026-06-01 01:17:23 +08:00
何开元 cca3d019fe feat(label): add issue label shortcuts
Add a `label` shortcut group wrapping the GitLink issue_tags (项目标记) API
with +list / +create / +update / +delete, plus the gitlink-label Skill,
bilingual README usage, and a changelog entry.

- +list supports keyword filter, only-name, and sort options
- +create defaults color to #1E90FF and validates hex client-side
- +update fetches current values and merges, preserving unspecified fields
- unit tests cover HTTP method, path, query, payload, color validation, id coercion
- ignore the local `gitlink-cli` build artifact (.gitignore previously only
  ignored the Windows .exe)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-30 06:38:39 -07:00
wangyue789 41a2666c5b feat(pipeline): add OpenAPI shortcuts 2026-05-27 22:20:18 +08:00
wbtiger 898b7f59d1 feat: add milestone, compare, pr reopen shortcuts and api enhancements (#45)
- milestone shortcuts: list, create, view, update, delete, close, reopen
- compare shortcuts: view, files (compare branches/tags/commits)
- pr +reopen: reopen closed pull requests
- api: add --body-file and --body-stdin for reading JSON from file/stdin
- comprehensive tests for all new shortcuts

Co-authored-by: wangyue111 <wangyue111>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 00:44:39 +08:00
wbtiger 7bcba5aed8 feat(member): add repository member shortcuts (#46)
Add member command group with 8 shortcuts:
- +list, +add, +batch-add, +remove, +role
- +invite-link, +invite-info, +accept-invite

Batch add supports --dry-run, CSV file input, and partial failure
reporting. 12 tests included.

Co-authored-by: Jiachen Li (puygob236) <noreply@gitlink.org.cn>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 00:24:15 +08:00
Mengz 2f84f3c62e docs: finalize webhook shortcut docs 2026-05-19 15:54:31 +08:00