Zum Hauptinhalt springen
Echtzeit-Radar & Feeds
Alle RSS Feeds ➔
👥 Community & Social
Windows Tipps & SecurityGrafikkarte vor Überhitzung schützen: So geht’s(25.09.2026 um 08:00 Uhr)
••••••••••
Windows Tipps & SecurityGrafikkarte vor Überhitzung schützen: So geht’s(25.09.2026 um 08:00 Uhr)
••••••••••
Intelligence View
⚡ tsecurity.de Intelligence

I Built a Claude Code Plugin That Simultaneously Posts to Zenn and dev.to With Just "Publish the article"

I built a plugin for Claude Code that simultaneously posts to Zenn (in Japanese) and dev.to (in English translation) just by saying "publish the article." What I Built zenn-post — Claude Code Plugin / S…

0
↗ Quelle (dev.to)
Reagiere als Erste:r — dein Feedback zählt!

I built a plugin for Claude Code that simultaneously posts to Zenn (in Japanese) and dev.to (in English translation) just by saying "publish the article."






What I Built



zenn-post — Claude Code Plugin / Skill



https://github.com/bokuno-studio/zenn-post-cc-plugin



This plugin handles the entire article publishing workflow — creating drafts, formatting Markdown, running git push, and calling the dev.to API — all delegated to Claude Code.






What It Can Do




  • "Publish the article" → simultaneously posts to Zenn (Japanese) and dev.to (English translation)

  • Pass a Notion page URL → reads the content, converts it to an article, and posts it

  • Just describe a topic verbally → fully automated from writing to git push

  • Automatically converts Mermaid diagrams to PNG locally (no external services)

  • Preview before publishing → runs git push after your OK




"Upload this Notion page to Zenn"
"Publish the article" ← Posts to both Zenn + dev.to
"Post to Zenn only" ← Zenn only









Why I Built It



The Zenn posting workflow was quietly tedious:




  1. Create a Markdown file

  2. Write the frontmatter

  3. Write the content

  4. Change published: true

  5. git commit & push

  6. (If also posting to dev.to) Translate to English and call the API



Doing this every time felt like a chore, so I thought "let Claude Code handle all of it."






Technical Highlights






Implemented as a Claude Code Skill (SKILL.md)



Claude Code has a plugin/skill feature where you can register a skill just by writing a prompt in SKILL.md. No code needed at all — you just define "how it should behave" in natural language.




skills/zenn-post/SKILL.md  ← that's it









Direct POST to dev.to via curl



The dev.to API is simple — a single curl request does the job. Claude Code reads the API key from .env and assembles the request.




curl -X POST https://dev.to/api/articles \
-H "api-key: $DEVTO_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "article": { "title": "...", "published": true, "body_markdown": "..." } }'









Mermaid Diagrams Converted to PNG Locally



Since dev.to doesn't render Mermaid, this plugin uses mermaid-cli for local conversion into images. The converted PNG is stored in the images/ directory of the zenn-content repository and served via raw.githubusercontent.com — no external services involved.




npx @mermaid-js/mermaid-cli -i diagram.mmd -o diagram.png -t default -b white









Installation



Prerequisites:




  • Claude Code installed

  • A Zenn account and zenn-content repository (public) on GitHub

  • A dev.to account and API key



Steps:




git clone https://github.com/bokuno-studio/zenn-post-cc-plugin ~/.claude/plugins/zenn-post






Edit the environment info section in skills/zenn-post/SKILL.md with your own paths, then register it with Claude Code.




claude plugin marketplace add ~/.claude/plugins/zenn-post
claude plugin install zenn-post









Changelog























Version Date Changes
v0.1.0 2026-04-16 Initial release (Zenn posting only)
v0.2.0 2026-04-17 Added dev.to simultaneous posting and Mermaid CLI support





Wrapping Up



Using Claude Code's Skill feature, you can take a new approach to automation: "define Claude's behavior without writing code." Extracting routine tasks like article publishing into a skill makes it satisfying to complete everything with just a verbal instruction.



Feel free to give it a try — feedback welcome!

1. Sofort-Triage & Abwehrmaßnahmen

SOC Incident Playbook: Vulnerability Remediation & Verification
Syntax validiert (0 Fehler)
title: Detect Exploitation - I Built a Claude Code Plugin That Simultaneously Posts to Zenn and dev.to With Just "Publish the article"
id: 3d2e0f3e-de44-4066-bd4c-c6802d5267bd
status: experimental
description: Automatisch generierte SIEM-Erkennungsregel basierend auf CTI Intelligence
references:
  - https://tsecurity.de/
author: iShareStuff CTI Automated Detection Engine
date: 2026-09-27
logsource:
  category: network_connection
  product: any
detection:
  selection:
      DestinationHostname:
        - 'dev.to'
  condition: selection
falsepositives:
  - Legitime administrative Zugriffe oder Penetrationstests
level: high
tags:
  - attack.initial_access
Syntax validiert (0 Fehler)
rule CTI_Threat_Indicator {
    meta:
        author = "iShareStuff CTI Automated Detection Engine"
        date = "2026-09-27"
        description = "YARA Signature for "
    strings:
        $str = "I Built a Claude Code Plugin T" ascii wide
    condition:
        any of them
}
Syntax validiert (0 Fehler)
index=security sourcetype IN ("cisco:asa", "pan:traffic", "zeek_conn", "suricata", "WinEventLog:Security")
(dest_host="dev.to")
| stats count earliest(_time) as first_seen latest(_time) as last_seen by src_ip, dest_ip, dest_host, signature
| eval first_seen=strftime(first_seen, "%Y-%m-%d %H:%M:%S"), last_seen=strftime(last_seen, "%Y-%m-%d %H:%M:%S")
| sort - count
Syntax validiert (0 Fehler)
destination.domain: ("dev.to") and event.category: "network"
Syntax validiert (0 Fehler)
CommonSecurityLog
| where DestinationHostName in ("dev.to")
| summarize EventCount = count(), FirstSeen = min(TimeGenerated), LastSeen = max(TimeGenerated) by SourceIP, DestinationIP, DestinationPort, Activity
| extend DetectionRule = "iShareStuff-CTI-Compiled"
| sort by EventCount desc

2. Cyber Threat Intelligence & Forensik

IoC Intelligence (1 Indikatoren)
dev[.]to
CTI Threat Relationship Graph2 Knoten / 1 Relationen
CVE / Incident Software MITRE ATT&CK CWE Weakness IoC
🎯
MITRE ATT&CK Matrix Navigator 14 Taktiken
Reconnaissance
-
Resource Development
-
Initial Access
Execution
Persistence
-
Privilege Escalation
Defense Evasion
Credential Access
-
Discovery
-
Lateral Movement
-
Collection
-
Command and Control
Exfiltration
-
Impact
tsecurity.de Cognitive Threat RAG
Fokus-Vektor:

Analyse für identifizierte Bedrohung auf Basis von Live-CTI (ENISA EUVD): CVSS 0.0 · EPSS 0.0% · CISA KEV: nein. Handlungsableitung aus den verlinkten Hersteller-Quellen.

🛡️ Angriffsfläche & Exposure

Netzwerk/Remote-Zugriff ohne Vorauthentifizierung möglich.

⚡ Empfohlene Sofortmaßnahmen
  • 1. Perimeter-Inspektion: Relevante Portfreigaben und exponierte Endpunkte unverzüglich scannen.
  • 2. Patch-Applikation: Hersteller-Hotfix einspielen oder betroffene Daemons in isolierte DMZ-Segmente überführen.
  • 3. Telemetrie & EDR-Alerts: Prozessaufrufe und Child-Processes auf anomale Shell-Spawns überwachen.
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten I Built a Claude Code Plugin That Simultaneously Posts to Zenn and dev.to With Just "Publish the article"

Thematisch verwandte Begriffe: Built, Claude, Code, Plugin · 6 Treffer

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

💬 Kommentare werden geladen…
Zum Aktualisieren ziehen
ZERO-DAY CVE-2026-100739 | A vulnerability was detected in mathurvishal CloudClassroom-PHP-Project…
Advisory →
tsecurity.de Icon
Offline-Lesen, Eilmeldungen & 0ms Ladezeit

Installiere tsecurity.de direkt auf deinen Home-Bildschirm für das ultimative Vollbild-Magazinerlebnis ohne Browser-Leisten.

Nächster Beitrag