google-spaces-updates by jezweb/claude-skills
npx skills add https://github.com/jezweb/claude-skills --skill google-spaces-updates状态:生产就绪 最后更新:2026-01-09
通过 webhook 向团队的 Google Chat Space 发布更新。
运行 /google-spaces-updates setup 或手动创建 .claude/settings.json:
{
"project": {
"name": "my-project",
"repo": "github.com/org/my-project"
},
"team": {
"chat_webhook": "https://chat.googleapis.com/v1/spaces/SPACE_ID/messages?key=KEY&token=TOKEN",
"members": ["Deepinder", "Joshua", "Raquel"]
}
}
"向团队发布部署更新"
"告知团队新功能"
"向团队询问认证方法"
在当前项目目录中查找 .claude/settings.json:
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
cat .claude/settings.json 2>/dev/null || echo "NOT_FOUND"
如果未找到,询问用户:
"此项目未配置 Google Spaces。您希望我进行设置吗?我需要您团队的 Google Space 的 webhook URL。"
然后使用 templates/settings-template.json 中的模板创建文件。
根据命令或上下文确定更新类型:
| 类型 | 使用场景 |
|---|---|
deployment | 推送到生产/暂存环境后,部署到 Vercel 等之后 |
bugfix | 修复错误后,特别是团队报告的错误 |
feature | 完成可供审查/使用的功能后 |
question | 遇到阻碍或需要团队对某个决策提供意见时 |
custom | 其他任何情况 |
收集要包含的相关信息:
# 最近的提交(用于上下文)
git log --oneline -3 2>/dev/null
# 当前分支
git branch --show-current 2>/dev/null
# 更改的文件(如果有最近的更改)
git diff --name-only HEAD~1 2>/dev/null | head -10
同时使用对话中的上下文:
使用 templates/ 目录中的相应模板。
Google Chat 的关键格式化规则:
*粗体* 进行强调(不要使用 markdown 粗体)_斜体_ 表示次要文本curl -X POST "WEBHOOK_URL" \
-H "Content-Type: application/json" \
-d '{"text": "MESSAGE_HERE"}'
替换:
WEBHOOK_URL 为 .claude/settings.json 中的值 → team.chat_webhookMESSAGE_HERE 为格式化后的消息(正确转义引号)发布后,告知用户:
"已向团队聊天发布更新:[发布内容的简要摘要]"
🚀 *已部署:[PROJECT_NAME]*
[WHAT_CHANGED - 1-2 句话]
• 分支:`[BRANCH]`
• 提交:`[COMMIT_HASH]`
[• 预览:URL(如果适用)]
[• 生产:URL(如果适用)]
_由 [USER] 通过 Claude Code 发布_
🐛 *错误已修复:[PROJECT_NAME]*
*问题:* [什么出现了问题]
*解决方案:* [如何修复的]
*文件:* [更改的关键文件]
[• 提交:`[COMMIT_HASH]`]
_如果您报告了此问题,请验证。_
✨ *功能完成:[PROJECT_NAME]*
*[FEATURE_NAME]*
[DESCRIPTION - 功能描述,1-2 句话]
[• 演示:URL]
[• 文件:关键文件]
_可供审查/测试。_
❓ *问题:[PROJECT_NAME]*
[QUESTION - 清晰且具体]
*上下文:*
[相关背景 - 您正在做什么,尝试过什么]
*考虑过的选项:*
1. [选项 A]
2. [选项 B]
_@[PERSON] - 期待您的意见_
📢 *更新:[PROJECT_NAME]*
[MESSAGE]
_由 [USER] 通过 Claude Code 发布_
当用户运行 /google-spaces-updates setup 时:
.claude/settings.json.claude/ 添加到 .gitignore在以下情况建议发布更新:
git push 到 main/master/production 分支后询问:"您希望我向团队发布关于此事的更新吗?"
URL 格式:https://chat.googleapis.com/v1/spaces/SPACE_ID/messages?key=KEY&token=TOKEN
安全提示:保持 webhook URL 私密。将 .claude/settings.json 添加到 .gitignore。
每周安装量
301
仓库
GitHub 星标数
643
首次出现
2026年1月20日
安全审计
安装于
claude-code256
gemini-cli200
opencode199
cursor195
antigravity184
codex172
Status : Production Ready Last Updated : 2026-01-09
Post updates to a team Google Chat Space via webhook.
Run /google-spaces-updates setup or manually create .claude/settings.json:
{
"project": {
"name": "my-project",
"repo": "github.com/org/my-project"
},
"team": {
"chat_webhook": "https://chat.googleapis.com/v1/spaces/SPACE_ID/messages?key=KEY&token=TOKEN",
"members": ["Deepinder", "Joshua", "Raquel"]
}
}
"Post deployment update to team"
"Tell the team about the new feature"
"Ask the team about the auth approach"
Look for .claude/settings.json in the current project directory:
cat .claude/settings.json 2>/dev/null || echo "NOT_FOUND"
If NOT_FOUND, ask the user:
"This project doesn't have Google Spaces configured. Would you like me to set it up? I'll need the webhook URL for your team's Google Space."
Then create the file using the template in templates/settings-template.json.
Based on the command or context, determine the update type:
| Type | When to use |
|---|---|
deployment | After pushing to production/staging, deploying to Vercel/etc |
bugfix | After fixing a bug, especially one reported by team |
feature | After completing a feature that's ready for review/use |
question | When blocked or need team input on a decision |
custom | For anything else |
Collect relevant information to include:
# Recent commits (for context)
git log --oneline -3 2>/dev/null
# Current branch
git branch --show-current 2>/dev/null
# Changed files (if recent changes)
git diff --name-only HEAD~1 2>/dev/null | head -10
Also use context from the conversation:
Use the appropriate template from templates/ directory.
Key formatting rules for Google Chat:
*bold* for emphasis (not markdown bold)_italic_ for secondary textcurl -X POST "WEBHOOK_URL" \
-H "Content-Type: application/json" \
-d '{"text": "MESSAGE_HERE"}'
Replace:
WEBHOOK_URL with value from .claude/settings.json → team.chat_webhookMESSAGE_HERE with the formatted message (escape quotes properly)After posting, tell the user:
"Posted update to team chat: [brief summary of what was posted]"
🚀 *Deployed: [PROJECT_NAME]*
[WHAT_CHANGED - 1-2 sentences]
• Branch: `[BRANCH]`
• Commit: `[COMMIT_HASH]`
[• Preview: URL (if applicable)]
[• Production: URL (if applicable)]
_Posted by [USER] via Claude Code_
🐛 *Bug Fixed: [PROJECT_NAME]*
*Problem:* [What was broken]
*Solution:* [How it was fixed]
*Files:* [Key files changed]
[• Commit: `[COMMIT_HASH]`]
_Please verify if you reported this issue._
✨ *Feature Complete: [PROJECT_NAME]*
*[FEATURE_NAME]*
[DESCRIPTION - what it does, 1-2 sentences]
[• Demo: URL]
[• Files: key files]
_Ready for review/testing._
❓ *Question: [PROJECT_NAME]*
[QUESTION - clear and specific]
*Context:*
[Relevant background - what you're working on, what you've tried]
*Options considered:*
1. [Option A]
2. [Option B]
_@[PERSON] - would appreciate your input_
📢 *Update: [PROJECT_NAME]*
[MESSAGE]
_Posted by [USER] via Claude Code_
When user runs /google-spaces-updates setup:
.claude/settings.json using the template.claude/ to .gitignore if not already thereSuggest posting an update when:
git push to main/master/productionAsk: "Would you like me to post an update to the team about this?"
The URL format: https://chat.googleapis.com/v1/spaces/SPACE_ID/messages?key=KEY&token=TOKEN
Security : Keep webhook URLs private. Add .claude/settings.json to .gitignore.
Weekly Installs
301
Repository
GitHub Stars
643
First Seen
Jan 20, 2026
Security Audits
Gen Agent Trust HubWarnSocketPassSnykFail
Installed on
claude-code256
gemini-cli200
opencode199
cursor195
antigravity184
codex172
Azure Data Explorer (Kusto) 查询技能:KQL数据分析、日志遥测与时间序列处理
102,600 周安装