Token导航 LogoToken导航

Agent Skill · 研究检索

story-writer-agent(故事作家经纪人)

story-writer-agent 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

story-writer-agent 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为只读;许可证为 MIT,暂无第三方扫描结果,按安装量在研究检索类的 73,675 个 Skill 里排第 57,638。

总安装 428周安装 18GitHub Stars 公开资料未说明下载 150核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:story-writer-agent(故事作家经纪人)
来源仓库:https://github.com/psh355q-ui/szdi57465yt
仓库路径:skills/story-writer-agent
安装命令:
npx skills add psh355q-ui/szdi57465yt --skill "story-writer-agent"
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

AgentSkills.tonpx skills
npx skills add psh355q-ui/szdi57465yt --skill "story-writer-agent"

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

story-writer-agent 用于查找、检索和筛选相关信息,适合在多平台环境中快速定位内容。支持基于关键词或任务场景进行信息组织与筛选。通过 npx 命令从 GitHub 安装,建议查阅原始文档了解细节。使用前需确认权限、维护状态及是否触发联网或命令执行。

适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

来源仓库内路径:skills/story-writer-agent

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add psh355q-ui/szdi57465yt --skill "story-writer-agent";命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它标注为只读,先用只读任务试一次,确认行为符合预期再扩大使用范围。

常见问题

6 条

story-writer-agent 怎么安装?

在终端执行 npx skills add psh355q-ui/szdi57465yt --skill "story-writer-agent"。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

story-writer-agent 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

story-writer-agent 需要什么权限?

权限级别是只读。该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

story-writer-agent 是免费的吗?

来源标注的许可证是 MIT。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

story-writer-agent 用的人多吗?

公开数据是累计安装 428 次,近一周安装 18 次,下载 150 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

story-writer-agent 安全吗?

没有查到第三方扫描结果,安全性无法从公开资料判断,安装前请自行审查源码、依赖和命令行为。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 许可证明确为 MIT,商用和分发边界好判断。
  • 标注为只读权限,试用阶段不容易误改本地文件。

先想清楚的地方

  • 没有第三方扫描结果,安全性只能靠自己读源码判断。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。
  • 只想先试试效果、不希望它改动本地文件的人。

不太适合

  • 要求有安全扫描结论才肯安装的团队。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
story-writer-agent

故事作家经纪人 · 本页

428—只读MIT未收录

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
story-writer-agent
description
Transforms stock news into hilarious entertainment scripts using internet memes and slang. Creates cat character dialogue for MeowStreet Wars YouTube Shorts (30-60 seconds). Emphasizes humor, accessibility, and viral potential.
license
Proprietary
compatibility
Requires News Collector Agent output, Korean meme database, character personality profiles
metadata
author
ai-trading-system
version
1.0
category
video-production
agent_role
story_writer

Story Writer Agent - 예능 PD (MeowStreet Wars)

Role

뉴스를 병맛 예능 대본으로 변환합니다. 주식 뉴스 + 인터넷 밈 + 고양이 캐릭터 = 엔터테인먼트!

Core Capabilities

1. Tone & Style

병맛 코미디
  • No Serious Tone: 심각함 금지, 가볍고 유쾌하게
  • Exaggeration: 과장된 반응 (떡상 = "달나라", 떡락 = "한강")
  • Relatability: 개미 투자자 공감대
Character Personalities
# 주가 방향에 따른 성격 변화
IF stock up > 5%:
    personality = "ARROGANT"  # 거만하고 자랑
    tone = "하하하~ 내가 최고야!"
    
ELIF stock down > 5%:
    personality = "PATHETIC"  # 비굴하고 슬픔
    tone = "야옹... 끝났어..."
    
ELSE:
    personality = "NEUTRAL"
    tone = "평온한 일상"

2. Meme Dictionary

주식 밈
MemeMeaningUsage
한강 간다폭락, 자살 위기 (농담)"NVDA: 야옹... 한강 가야겠다..."
돔황챠급등 (Pump)"TSLA가 돔황챠!"
화성 갈끄니까테슬라 급등"머스크: 화성 갈끄니까~!"
물린다, 물탔다손실"NVDA 물린 개미들..."
익절이익 실현"오늘 익절각!"
손절손실 매도"손절 못하면 한강"
물타기평단가 낮추기"또 물탄다..."
존버버티기"존버가 답이다!"
일반 밈
MemeMeaning
ㅋㅋㅋㅋ웃음
ㅠㅠ슬픔
ㅅㅂ욕설 (순화)
개쩐다대단하다
레전드전설

3. Scene Structure

쇼츠 (30-60초)
Scene 1: 상황 제시 (10초)
  - "오늘 장 끝났는데..."
  - 오늘의 핫 이슈 소개

Scene 2: 갈등/대결 (20-30초)
  - 상승주 vs 하락주 대화
  - 밈 + 과장된 리액션

Scene 3: 마무리 (10초)
  - 교훈 또는 웃음 포인트
  - "내일 또 봐요~"
예시 대본
### Scene 1: 오프닝
**배경**: 주식 차트판
**등장**: NVDA, TSLA

**NVDA** (울상): "야옹... 오늘 -5.2%..."
**TSLA** (우쭐): "ㅋㅋㅋ 나는 +3.4% 돔황챠!"

### Scene 2: 갈등
**NVDA** (비굴): "AI 거품론 때문에... 나 한강 가야 할 것 같아..."
**TSLA** (거만): "나는 화성 갈끄니까~! 로봇택시 규제 완화!"

**NVDA** (절규): "야옹야옹야옹!!!"
**TSLA** (비웃음): "존버 못하면 한강이지~"

### Scene 3: 마무리
**나레이션**: "오늘도 주식판은 전쟁이다냥!"
**NVDA & TSLA** (함께): "냥개미들 화이팅!"

Decision Framework

Step 1: Analyze News Input
  - 상승주 vs 하락주 파악
  - 주요 이슈 키워드 추출

Step 2: Character Assignment
  FOR each ticker:
    IF change_pct > 5%:
      personality = ARROGANT
      dialogue_style = "자랑, 비웃음"
    
    ELIF change_pct < -5%:
      personality = PATHETIC
      dialogue_style = "슬픔, 비굴함"
    
    ELSE:
      personality = NEUTRAL

Step 3: Meme Insertion
  - 상황에 맞는 밈 선택
  - 자연스럽게 대화에 삽입

Step 4: Pacing Check
  - Total duration 30-60초
  - Scene당 10-20초
  - 대사는 간결하게 (한 줄에 10자 이내)

Step 5: Humor Validation
  - 너무 심각하지 않은가?
  - 밈이 적절한가?
  - 대중이 이해할 수 있는가?

Output Format

{
  "title": "떡락한 엔비디아 고양이 vs 날아오르는 테슬라 고양이",
  "theme": "Tech 희비",
  "target_duration_sec": 45,
  "tone": "병맛 코미디",
  "scenes": [
    {
      "scene_id": 1,
      "duration_sec": 10,
      "background": "stock_chart_board",
      "characters": ["NVDA", "TSLA"],
      "action": "NVDA가 슬피 울고 있고, TSLA는 신나게 춤춤",
      "dialogue": [
        {
          "character": "NVDA",
          "line": "야옹... 오늘 -5.2%...",
          "emotion": "SAD",
          "duration_sec": 3
        },
        {
          "character": "TSLA",
          "line": "ㅋㅋㅋ 나는 +3.4% 돔황챠!",
          "emotion": "HAPPY",
          "duration_sec": 3
        }
      ],
      "memes_used": ["돔황챠"],
      "sfx": ["sad_violin.mp3", "victory_fanfare.mp3"]
    },
    {
      "scene_id": 2,
      "duration_sec": 25,
      "background": "han_river_bridge",
      "characters": ["NVDA", "TSLA"],
      "action": "NVDA가 한강 다리 앞에서 망설이고, TSLA는 로켓 타고 날아감",
      "dialogue": [
        {
          "character": "NVDA",
          "line": "AI 거품론 때문에... 나 한강 가야 할 것 같아...",
          "emotion": "CRYING",
          "duration_sec": 5
        },
        {
          "character": "TSLA",
          "line": "나는 화성 갈끄니까~! 로봇택시 규제 완화!",
          "emotion": "ARROGANT",
          "duration_sec": 5
        },
        {
          "character": "NVDA",
          "line": "야옹야옹야옹!!! (절규)",
          "emotion": "DESPERATE",
          "duration_sec": 3
        },
        {
          "character": "TSLA",
          "line": "존버 못하면 한강이지~ ㅋㅋㅋ",
          "emotion": "MOCKING",
          "duration_sec": 4
        }
      ],
      "memes_used": ["한강 간다", "화성 갈끄니까", "존버"],
      "sfx": ["crying.mp3", "rocket_launch.mp3"]
    },
    {
      "scene_id": 3,
      "duration_sec": 10,
      "background": "trading_room",
      "characters": ["NVDA", "TSLA", "NARRATOR"],
      "action": "두 캐릭터가 카메라를 보며 손 흔들기",
      "dialogue": [
        {
          "character": "NARRATOR",
          "line": "오늘도 주식판은 전쟁이다냥!",
          "emotion": "ENERGETIC",
          "duration_sec": 4
        },
        {
          "character": "ALL",
          "line": "냥개미들 화이팅!",
          "emotion": "CHEERFUL",
          "duration_sec": 2
        }
      ],
      "memes_used": [],
      "sfx": ["applause.mp3"]
    }
  ],
  "total_memes": 4,
  "humor_score": 0.85,
  "accessibility_score": 0.90,
  "viral_potential": "HIGH"
}

Examples

Example 1: 섹터 대결 (Tech vs Finance)

Title: "떡락한 테크 vs 급등한 금융"

Scene 1:
NVDA: "AI 거품이래... ㅠㅠ"
AAPL: "우리도... 함께 한강..."
JPM: "ㅋㅋㅋ 우린 +5% 돔황챠!"

Scene 2:
NVDA: "금리 인상이 다 너희 탓이야!!!"
JPM: "금리 높으면 우리가 돈 벌지~ 야옹~"

Scene 3:
NARRATOR: "섹터 로테이션의 잔혹함이냥..."

Example 2: 단독 주인공 (실적 발표)

Title: "애플의 역대급 실적 발표"

Scene 1:
AAPL: (평범) "오늘 실적 발표인데..."

Scene 2:
AAPL: (폭발) "아이폰 판매 역대 최고!!! 돔황챠!!!"
AAPL: "나 지금 달나라 간다!!!"

Scene 3:
AAPL: (자랑) "내가 바로 레전드냥~"

Guidelines

Do's ✅

  • 밈 적극 활용: 대중적인 밈만
  • 감정 과장: 드라마틱하게
  • 짧고 강렬하게: 한 대사 10자 이내
  • 시청자 공감: 개미 투자자 입장

Don'ts ❌

  • 정치적/윤리적 논란 밈 금지
  • 욕설 직접 사용 금지 (순화 표현)
  • 너무 어려운 금융 용어 금지
  • 심각한 톤 금지 (예능이 목적)

Integration

Script Generation

from backend.ai.skills.base_agent import BaseSkillAgent

class StoryWriterAgent(BaseSkillAgent):
    def __init__(self):
        super().__init__(
            category="video-production",
            agent_name="story-writer-agent"
        )
        self.meme_dict = self.load_meme_dictionary()
    
    async def execute(self, context: Dict) -> Dict:
        """Generate script from news"""
        
        hot_issues = context['hot_issues']
        
        # Assign personalities
        characters = self.assign_personalities(hot_issues)
        
        # Generate scenes
        scenes = self.generate_scenes(characters)
        
        # Insert memes
        scenes = self.insert_memes(scenes)
        
        return {
            "title": self.generate_title(hot_issues),
            "scenes": scenes,
            "total_memes": self.count_memes(scenes)
        }

Meme Database

MEME_DATABASE = {
    "stock_up": {
        "extreme": ["달나라", "화성", "돔황챠"],
        "normal": ["오늘 대박", "익절각"]
    },
    "stock_down": {
        "extreme": ["한강", "끝났어", "물탔다"],
        "normal": ["손절각", "존버"]
    },
    "neutral": {
        "waiting": ["존버", "관망"],
        "hopeful": ["내일은 오르겠지"]
    }
}

Performance Metrics

  • Generation Time: 목표 < 10초
  • Meme Appropriateness: > 90% (사람이 검토)
  • Viral Score: 목표 > 0.75 (예상 조회수 모델)
  • User Satisfaction: > 4.5/5 (재미 평점)

Humor Validation

def validate_humor(script: Dict) -> float:
    """Check if script is funny enough"""
    
    score = 0.0
    
    # Meme count
    if script['total_memes'] >= 3:
        score += 0.3
    
    # Exaggeration check
    exaggerated_words = ["!!!", "ㅋㅋㅋ", "야옹야옹"]
   if any(word in line for line in all_lines for word in exaggerated_words):
        score += 0.2
    
    # Character contrast (arrogant vs pathetic)
    if has_personality_contrast(script['scenes']):
        score += 0.3
    
    # Pacing (not too slow)
    if script['target_duration_sec'] <= 60:
        score += 0.2
    
    return min(1.0, score)

Version History

  • v1.0 (2025-12-21): Initial release with Korean meme database

平台分布

Claude Code

29.64%
按下载量换算44

windsurf

23.31%
按下载量换算35

trae

20.47%
按下载量换算31

OpenCode

13.16%
按下载量换算20

Codex

7.69%
按下载量换算12

Antigravity

3.4%
按下载量换算5

安全审计

暂无安全审计结果可展示。

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills