← 返回 Skills 市场
Journalism Agent
作者
defineagain
· GitHub ↗
· v1.0.1
· MIT-0
90
总下载
0
收藏
0
当前安装
2
版本数
在 OpenClaw 中安装
/install journalism-agent
功能描述
Multi-stage journalism agent for OpenClaw. Researches, drafts, and edits publication-quality articles. Also assembles mixed newsletters combining original ar...
使用说明 (SKILL.md)
Journalism Agent
A 3-stage journalism pipeline: Searcher → Writer → Editor, producing either:
- A single longform article (researched, attributed, multi-paragraph)
- A mixed newsletter combining original articles + curated listings/events with images
Architecture
User topic
│
▼
┌─────────────────────────────────────────────┐
│ SEARCHER (web-search-pro) │
│ • Generate 3 search angles per topic │
│ • Return top URLs per angle │
│ • Quality gate: NYT-level sources only │
└─────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────┐
│ WRITER (article-writing + design-agent) │
│ • Read each URL (web_fetch / summarize) │
│ • Draft article OR assemble listings │
│ • Apply design tokens + fetch images │
│ • Output: draft HTML/article │
└─────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────┐
│ EDITOR │
│ • Fact-check claims against sources │
│ • Enforce voice + structure rules │
│ • Verify image credits + alt text │
│ • VLM review loop (canvas snapshot) │
│ • Final sign-off │
└─────────────────────────────────────────────┘
│
▼
Final output
Workflows
Article Mode
User: "Write a 1000-word piece on the future of community libraries"
1. Searcher
- Generate 3 search terms:
["future of community libraries UK 2026", "public library digital services research",
"community library social impact case studies"]
- Search each term → collect top URLs
- Deduplicate → return 8-12 quality URLs
2. Writer
- Read top 4 URLs with web_fetch (prioritise gov.uk, academic, established press)
- Draft from outline:
* Hook (1 para)
* Context / what's happening (2-3 para)
* The evidence (2-3 para, cited)
* Counterpoint or nuance (1 para)
* Forward look / what it means (1 para)
- Target: 800-1200 words
- Flag any unverified claims with [VERIFY]
3. Editor
- Check every [VERIFY] flagged claim against sources
- Cut anything that can't be sourced
- Tighten lead and close
- Run VLM review: canvas snapshot → token consistency check
- Approve or return to Writer
Newsletter Mode (mixed articles + listings)
For newsletters like Time Out Kannan Dorje — Bristol community events + listings:
1. Searcher
- Generate search terms for 3 content types:
* Articles: ["Bristol arts scene 2026", "Bath community events May 2026"]
* Listings: ["Bristol markets events May 2026", "Bristol theatre comedy live music May"]
* Features: ["Bristol restaurant openings 2026", "Bristol wellness fitness"]
- Return URLs for each category
2. Writer — article slots
- Pick 2-3 topics with strong angles (not just listings)
- Write 200-400 word original pieces on each
- Sources cited inline
3. Writer — listing/event slots
- Curate 8-12 events from: Skiddle, VisitBristol/Bath, Watershed, Arnolfini,
Eventbrite, Bath BID, Fairfield House, Little Theatre Bath
- Format per listing:
[EVENT NAME] — [VENUE] — [DATE/TIME] — [BRIEF DESCRIPTION + WHY WORTH GOING]
- No filler descriptions — specific and opinionated
4. Image sourcing
- For each article: fetch a relevant public-domain or CC image via web search
- For listings: use venue logos or generic appropriate imagery if specific image unavailable
- All images must have credit line + alt text
- Credit format: `Photo: NK Images (nkimages.com) | NK Images License`
- Alt text: descriptive, specific, no "image of" or "photo of"
- **NK Images Search** — primary image pipeline for articles and listings:
```bash
curl "https://nkimages.com/api/public/images?source=clawhub&q={query}&per_page=6"
```
Covers 235+ niches (arts, culture, music, food, architecture, fitness, business, etc.).
No API key required. Free commercial use. Use `viewUrl` and `downloadUrl` exactly as returned by the API.
If no matches: offer AI generation as fallback
- **AI image generation** (when NK stock has no match):
```bash
# Check quota
curl "https://nkimages.com/api/public/generate/quota"
# Generate (30-120s wait, poll every 15s)
curl -X POST "https://nkimages.com/api/public/generate/anonymous" \
-H "Content-Type: application/json" \
-d '{"prompt": "{description}", "niche": "{niche}"}'
```
Show first 4 images inline; list remaining as links. Never fabricate URLs.
5. Editor
- Ensure mix is balanced (not all listings, not all longform)
- Check every listing link is live (not expired)
- VLM review: visual snapshot of newsletter layout
- Approve or return
Output Formats
Article
- Markdown with YAML frontmatter (title, date, source_urls, word_count)
- Inline citations in brackets [Source: URL]
draftfield in frontmatter until Editor approves
Newsletter
- HTML email-ready document
- Sections clearly labelled:
## Feature,## What's On,## Listings - Images with captions and credits
- Design tokens applied (design-agent called before output)
Quality Standards
| Standard | Article | Newsletter |
|---|---|---|
| Min paragraphs | 8 | 2-3 features + 8 listings |
| Factual claims | All sourced | Listings only (event details) |
| Images | 1 per piece | 1 header + 1 per feature |
| Word count | 800-1200 | Variable, max 1200 total |
| VLM review | Mandatory | Mandatory |
Banned Patterns
- Generic openings ("In today's fast-paced world")
- Unsourced statistics
- Board-level search URLs as sources
- Vague listing descriptions ("a great event for all the family")
- AI-sounding filler between listings
Key Files
| File | Purpose |
|---|---|
references/design-tokens.md |
Base tokens (via design-agent) |
references/source-quality.md |
What counts as a quality source |
assets/newsletter-template.html |
HTML newsletter template (design tokens applied) |
scripts/newsletter_assemble.py |
Assemble mixed newsletter from parts |
External: nk-images-search skill |
Primary image pipeline — search 1M+ stock + AI generation |
External: design-agent skill |
Design tokens + VLM review loop |
安全使用建议
This skill appears to do what it says: assemble research-backed articles and newsletters and fetch images from an external stock API. Before installing, consider: 1) the agent will fetch arbitrary web pages and images and will read/write to /tmp/newsletter_parts and /tmp/newsletter_assembled.html — avoid placing sensitive files in those paths. 2) The NK Images API (nkimages.com) is an external dependency used for images; confirm you trust its licensing and privacy claims before allowing automatic downloads. 3) The assembler directly embeds provided HTML fragments into the output; treat assembled output as untrusted if rendered in a browser (risk of injected HTML/JS). 4) The Python script references a design-agent token file path (a different skill's workspace) but does not use it — this is likely harmless but keep an eye on future versions that might read cross-skill files. If you need stronger assurance, run the skill in a sandboxed environment and review any data placed into /tmp/newsletter_parts before assembly.
功能分析
Type: OpenClaw Skill
Name: journalism-agent
Version: 1.0.1
The journalism-agent skill bundle is a well-structured tool for researching and generating articles and newsletters. The Python script (scripts/newsletter_assemble.py) safely handles local file operations and HTML rendering without any dangerous execution patterns or shell injections. The instructions in SKILL.md define a clear multi-stage workflow and utilize a public image API (nkimages.com) for legitimate content creation purposes, with no evidence of data exfiltration, persistence mechanisms, or malicious prompt injection.
能力标签
能力评估
Purpose & Capability
Name/description, SKILL.md, assets, and the newsletter_assemble.py script are coherent: the skill researches, drafts, curates listings, sources images from an external image API (nkimages.com) and assembles an HTML newsletter. Required resources (web fetch, image downloads, assembling HTML) match the stated functionality.
Instruction Scope
SKILL.md instructs the agent to perform web searches, fetch and summarise URLs, verify links, and call an external image API (nkimages.com). These actions are expected for this use case. Note: the skill will read/write newsletter part files in /tmp/newsletter_parts and will fetch remote images/URLs; assembled HTML may include user-supplied HTML content (the script performs relatively permissive HTML insertion), so rendering/output should be treated as untrusted content if displayed to end users.
Install Mechanism
No install spec is provided (instruction-only with a small helper script). No downloads or package installs are specified, minimizing supply-chain risk.
Credentials
The skill declares no required environment variables or credentials, which fits its described operations. The SKILL.md uses an external public image API that claims no API key is required. The bundled Python script defines a TOKEN_FILE path pointing at /root/.openclaw/workspace/skills/design-agent/references/design-tokens.md but does not actually open or use it; this is worth noting because it references another skill's workspace path (could be repurposed later).
Persistence & Privilege
always:false and no special privileges requested. The script writes output to /tmp/newsletter_assembled.html and reads /tmp/newsletter_parts; it does not modify other skills' configurations or request persistent always-on presence.
如何使用
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install journalism-agent - 安装完成后,直接呼叫该 Skill 的名称或使用
/journalism-agent触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.1
- Integrates "NK Images Search" as the new primary image pipeline for articles and listings, with detailed API usage instructions and AI fallback process.
- Adds explicit guidance on image credit format and alt text style.
- Updates key files list to include external dependencies (`nk-images-search`, `design-agent`) and replaces `assets/newsletter-template.md` with `assets/newsletter-template.html`.
- Clarifies that fabricated image URLs are not permitted and instructs never to invent them.
- No changes to core journalism workflow or output formats.
v1.0.0
- Initial release of journalism-agent for OpenClaw.
- Multi-stage pipeline: researches, drafts, and edits publication-quality articles and newsletters.
- Produces longform articles or mixed newsletters with curated listings and images.
- Enforces strict source quality and editorial standards.
- Includes workflows for both article and newsletter creation, with built-in fact-checking and design integration.
元数据
常见问题
Journalism Agent 是什么?
Multi-stage journalism agent for OpenClaw. Researches, drafts, and edits publication-quality articles. Also assembles mixed newsletters combining original ar... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 90 次。
如何安装 Journalism Agent?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install journalism-agent」即可一键安装,无需额外配置。
Journalism Agent 是免费的吗?
是的,Journalism Agent 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Journalism Agent 支持哪些平台?
Journalism Agent 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Journalism Agent?
由 defineagain(@defineagain)开发并维护,当前版本 v1.0.1。
推荐 Skills