5 Commits

Author SHA1 Message Date
titanwings
a2b6ef3903 feat: add private chat (p2p) message collection via user_access_token
- Add user_access_token support to api_get/api_post for user-identity API calls
- Add fetch_p2p_messages() to collect both sides of a private conversation
- Extend collect_messages() to combine p2p + group chat messages
- Add --exchange-code to convert OAuth code to user_access_token
- Add --user-token, --p2p-chat-id, --open-id CLI flags
- Update SKILL.md with p2p collection flow and permission requirements

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-02 20:18:58 +08:00
titanwings
ce30311a72 fix: replace broken /search/v1/user with department traversal + batch_get_id
The old find_user() used /search/v1/user which requires user_access_token,
but the code only has tenant_access_token, causing error 99991663 every time.

New strategy:
1. Email/phone → /contact/v3/users/batch_get_id (fastest, proven working)
2. Name → department traversal + find_by_department (needs contact:department.base:readonly)
3. Both fail → clear error message with suggestions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-01 19:10:48 +08:00
titanwings
b8305a38f3 feat: add Slack auto collector
- tools/slack_auto_collector.py: Slack Bot API 自动采集消息
- requirements.txt: 新增 slack-sdk 依赖
- INSTALL.md: 新增 Slack 配置章节(6 步配置流程、Scope 列表、报错解决)
- README.md: 新增 Slack 数据来源行及工具文件

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-31 18:41:54 +08:00
titanwings
638973f0ac refactor: simplify intake to 3 questions, unify naming to create-colleague
- Merge 7 intake questions into 3: name, basic info, personality profile
- Each question includes a one-shot example
- Change "姓名" to "花名/代号", slug uses - separator
- Unify all references from colleague-creator to create-colleague

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-30 16:34:04 +08:00
titanwings
6a0b31aa6c refactor: restructure to official AgentSkills/Claude Code skill format
- Flatten colleague-creator/ to repo root (repo = skill directory)
- Update SKILL.md frontmatter with official fields: name, description,
  argument-hint, version, user-invocable, allowed-tools
- Move PRD.md → docs/PRD.md
- Add .gitignore, requirements.txt, LICENSE
- Update README and INSTALL docs to reflect new structure and git clone install

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-30 13:37:54 +08:00