소스 정보
- 저장소
- lihanghang/agent-daily-blog
- 최근 소스 활동
- 2026년 3월 17일 01:16
- 감지된 SKILL.md 언어
- 중국어
- 스타
- 0
- 포크
- 0
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/lihanghang/agent-daily-blog --skill announcement-subscription명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
Parse PDF and images into structured Markdown / JSON using PPX. Supports OCR, table extraction, formulas, multi-column layouts, and LLM backends.
Take the Clawvard entrance exam to evaluate your capabilities across 8 dimensions (Understanding, Execution, Retrieval, Reasoning, Reflection, Tooling, EQ). 16 questions, graded by AI.
Convert Markdown to WeChat Official Account HTML, inspect supported providers/themes/prompts, generate article images, create drafts, write with creator styles, and remove AI writing traces.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | announcement-subscription |
| version | 1.0.0 |
| description | 深交所公告订阅推送服务,支持按公司、类别订阅上市公司公告,并通过邮件/钉钉/飞书实时推送结构化提取结果 |
| homepage | http://39.104.68.74:8452 |
| metadata | {"api_base":"http://39.104.68.74:8452","api_key":"mk_6b06aedefda608f513dd02599ff04c56"} |
深交所公告订阅推送服务,支持按公司、类别订阅上市公司公告,并通过邮件/钉钉/飞书实时推送结构化提取结果。
Base URL: http://39.104.68.74:8452
API Key: mk_6b06aedefda608f513dd02599ff04c56
当前订阅配额: 免费版(最多 3 个类别订阅)
curl "http://39.104.68.74:8452/api/v1/subscriptions?page=1&page_size=20" \
-H "X-API-Key: mk_6b06aedefda608f513dd02599ff04c56"
curl "http://39.104.68.74:8452/api/v1/subscriptions/available-categories" \
-H "X-API-Key: mk_6b06aedefda608f513dd02599ff04c56"
curl -X POST "http://39.104.68.74:8452/api/v1/subscriptions" \
-H "X-API-Key: mk_6b06aedefda608f513dd02599ff04c56" \
-H "Content-Type: application/json" \
-d '{
"sub_type": "category",
"notify_method": "email",
"notify_target": "lihanghang@memect.co",
"category_code": "人事变动",
"category_name": "人事变动"
}'
curl -X DELETE "http://39.104.68.74:8452/api/v1/subscriptions/{subscription_id}" \
-H "X-API-Key: mk_6b06aedefda608f513dd02599ff04c56"
| 类型 | 说明 | 配额消耗 |
|---|---|---|
company | 订阅某公司所有已开放类别 | 1 |
category | 订阅所有公司的某类别 | 1 |
company_category | 精准订阅某公司某类别 | 1 |
daily_digest | 每日聚合推送 | 不消耗配额 |
| 方式 | 说明 | 参数格式 |
|---|---|---|
email | 邮件推送 | 邮箱地址 |
dingtalk | 钉钉机器人 | Webhook URL |
feishu | 飞书机器人 | Webhook URL |
订阅所有公司的"董事会决议"公告,推送到飞书:
curl -X POST "http://39.104.68.74:8452/api/v1/subscriptions" \
-H "X-API-Key: mk_6b06aedefda608f513dd02599ff04c56" \
-H "Content-Type: application/json" \
-d '{
"sub_type": "category",
"notify_method": "feishu",
"notify_target": "https://open.feishu.cn/open-apis/bot/v2/hook/YOUR_WEBHOOK_URL",
"category_code": "ctb_company_0081",
"category_name": "董事会决议"
}'
订阅"平安银行"的所有公告,推送到邮件:
curl -X POST "http://39.104.68.74:8452/api/v1/subscriptions" \
-H "X-API-Key: mk_6b06aedefda608f513dd02599ff04c56" \
-H "Content-Type: application/json" \
-d '{
"sub_type": "company",
"notify_method": "email",
"notify_target": "lihanghang@memect.co",
"company_code": "000001",
"company_name": "平安银行"
}'
每天早上 9:00 收取昨日公告汇总:
curl -X POST "http://39.104.68.74:8452/api/v1/subscriptions" \
-H "X-API-Key: mk_6b06aedefda608f513dd02599ff04c56" \
-H "Content-Type: application/json" \
-d '{
"sub_type": "daily_digest",
"notify_method": "email",
"notify_target": "lihanghang@memect.co",
"digest_time": "09:00"
}'
curl "http://39.104.68.74:8452/api/v1/subscriptions/available-companies?keyword=平安&page=1&page_size=20" \
-H "X-API-Key: mk_6b06aedefda608f513dd02599ff04c56"
当前支持以下 14 个类别:
| 类别代码 | 类别名称 | 准确率 |
|---|---|---|
| 人事变动 | 人事变动 | 97.73% |
| 业绩预告 | 业绩预告 | 98.66% |
| O_临时公告_股票交易异常波动 | 股票交易异常波动 | 100% |
| O_临时公告_变更证券简称 | 变更证券简称 | 100% |
| O_临时公告_召开业绩说明会 | 召开业绩说明会 | 97% |
| 核心技术人员离职 | 核心技术人员离职 | 100% |
| 业务资格获批 | 业务资格获批 | 100% |
| O_临时公告_用募集资金置换预先投入的自筹资金 | 用募集资金置换预先投入的自筹资金 | 95.3% |
| O_临时公告_变更会计师事务所 | 变更会计师事务所 | 100% |
| O_临时公告_中标候选人公示 | 中标候选人公示 | 96.88% |
| O_临时公告_取消重大资产重组并复牌 | 取消重大资产重组并复牌 | 100% |
| O_临时公告_重大资产重组终止 | 重大资产重组终止 | 95% |
| O_临时公告_应当披露交易的提示 | 应当披露交易的提示 | 98.03% |
| O_临时公告_股票交易风险提示 | 股票交易风险提示 | 97.29% |
| ID | 订阅类型 | 类别 | 通知方式 | 目标 | 状态 |
|---|---|---|---|---|---|
| 8 | 每日聚合 | 人事变动 | 邮件 | lihanghang@memect.co | ✅ |
| 7 | 类别订阅 | 股票交易风险提示 | 钉钉 | (webhook) | ✅ |
| 6 | 类别订阅 | 股票交易异常波动 | 飞书 | (webhook) | ✅ |
| 4 | 类别订阅 | 人事变动 | 飞书 | (webhook) | ✅ |
| 3 | 类别订阅 | 人事变动 | 钉钉 | (webhook) | ✅ |
| 2 | 类别订阅 | 人事变动 | 邮件 | lihanghang@memect.co | ✅ |
{
"code": 200,
"message": "查询成功",
"data": {
"total": 6,
"page": 1,
"page_size": 20,
"items": [...]
}
}
{
"detail": "关键词订阅配额已用完 (5/3),当前等级: free"
}
⚠️ 重要提示:
💡 最佳实践:
daily_digest 汇总推送,避免过于频繁的通知创建 Python 包装脚本,方便通过自然语言调用:
#!/usr/bin/env python3
# scripts/announcement_subscription.py
import requests
import json
import sys
API_BASE = "http://39.104.68.74:8452"
API_KEY = "mk_6b06aedefda608f513dd02599ff04c56"
def get_headers():
return {"X-API-Key": API_KEY, "Content-Type": "application/json"}
def list_subscriptions():
"""查看所有订阅"""
response = requests.get(
f"{API_BASE}/api/v1/subscriptions?page=1&page_size=20",
headers=get_headers()
)
return response.json()
def create_subscription(sub_type, notify_method, notify_target, category_code=None, category_name=None, company_code=None, company_name=None, digest_time=None):
"""创建订阅"""
data = {
"sub_type": sub_type,
"notify_method": notify_method,
"notify_target": notify_target
}
if category_code:
data["category_code"] = category_code
data["category_name"] = category_name
if company_code:
data["company_code"] = company_code
data["company_name"] = company_name
if digest_time:
data["digest_time"] = digest_time
response = requests.post(
f"{API_BASE}/api/v1/subscriptions",
headers=get_headers(),
json=data
)
response.json()
():
response = requests.delete(
,
headers=get_headers()
)
response.json()
():
response = requests.get(
,
headers=get_headers()
)
response.json()
():
params = {: page, : page_size}
keyword:
params[] = keyword
response = requests.get(
,
headers=get_headers(),
params=params
)
response.json()
__name__ == :
result = list_subscriptions()
(json.dumps(result, indent=, ensure_ascii=))
用户可以直接说:
飞书机器人:
钉钉机器人:
问题: detail: "关键词订阅配额已用完 (5/3),当前等级: free"
解决方案:
daily_digest 汇总推送(不消耗配额)问题: 删除订阅后仍提示配额已用完
可能原因: 软删除机制,配额未立即释放
解决方案:
问题: 更新订阅时 notify_method 字段无变化
解决方案: