Internal Communications Writer
anthropics/skills
A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill…
Internal communication log: title, type, date, department, host and attendees, agenda, action items, follow-up date, meeting link and delivery status.
$ npx skills add sickn33/agentic-awesome-skills --skill internal-communication -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install sickn33/agentic-awesome-skills internal-communication --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/internal-communication .claude/skills/internal-communication && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "internal-communication" agent skill from https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/internal-communication into .claude/skills/internal-communication/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "internal-communication", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/internal-communicationType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add sickn33/agentic-awesome-skills --skill internal-communication -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install sickn33/agentic-awesome-skills internal-communication --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/internal-communication .agents/skills/internal-communication && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "internal-communication" agent skill from https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/internal-communication into .agents/skills/internal-communication/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "internal-communication", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add sickn33/agentic-awesome-skills --skill internal-communication -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install sickn33/agentic-awesome-skills internal-communication --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/internal-communication .cursor/skills/internal-communication && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "internal-communication" agent skill from https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/internal-communication into .cursor/skills/internal-communication/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "internal-communication", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/sickn33/agentic-awesome-skills.git --path skills/internal-communication--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add sickn33/agentic-awesome-skills --skill internal-communication -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install sickn33/agentic-awesome-skills internal-communication --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/internal-communication .gemini/skills/internal-communication && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "internal-communication" agent skill from https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/internal-communication into .gemini/skills/internal-communication/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "internal-communication", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install sickn33/agentic-awesome-skills internal-communicationInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add sickn33/agentic-awesome-skills --skill internal-communication -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/internal-communication .github/skills/internal-communication && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "internal-communication" agent skill from https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/internal-communication into .github/skills/internal-communication/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "internal-communication", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add sickn33/agentic-awesome-skills --skill internal-communication -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install sickn33/agentic-awesome-skills internal-communication --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/internal-communication .opencode/skills/internal-communication && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "internal-communication" agent skill from https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/internal-communication into .opencode/skills/internal-communication/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "internal-communication", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
internal-communicationInternal communication log: title, type, date, department, host and attendees, agenda, action items, follow-up date, meeting link and delivery status.
Internal Communication is an agent skill from sickn33/agentic-awesome-skills. Internal communication log: title, type, date, department, host and attendees, agenda, action items, follow-up date, meeting link and delivery status. Use for internal comms tracking.
Its SKILL.md is about 3.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Writing & Content, covering Internal communications. The repository describes itself as: AAS Core is the local, agent-first control plane for complete catalog discovery, agent-owned selection, stack validation, and planning, backed by 2,400+ agentic skills. Includes… The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit ec02547. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are yaml, csv, sql, json and markdown).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
json-schema.orgFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Internal Communication loads about 3.4k tokens when it runs. Until then it costs about 52 tokens; SKILL.md has 1,351 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from sickn33/agentic-awesome-skills at commit ec02547, republished under its MIT licence (© sickn33). 1,351 words, ~3,385 tokens.
.claude/skills/internal-communication/SKILL.md (or your agent's skills folder).What it is: Structured comms.
Works out the smallest useful Internal Communication setup for the business in front of it, then builds it only when asked. The default output is a short recommendation, not a spreadsheet. Artifacts - CSV, SQL DDL, JSON Schema, Notion mapping - are produced on request, from one field list so they cannot drift apart.
Layer: Layer 6: Engage. Fits: Scale stage. Table code: n/a.
Also use it when the user says "structured comms", or describes the same process happening in a spreadsheet, a document or someone inboxes.
Do not use it for: payroll calculation, tax filing, or legal advice. This skill produces empty templates only - it never holds or processes real employee or customer data.
Follow the shared execution contract. The module-specific rules below define only domain fields, decisions, calculations, and safety constraints.
Read the request and pick the intent before asking anything.
Ask only if this is the highest-value missing fact; otherwise proceed without an opener:
Q: How do people get company news today?
Skip anything the user already answered, in any earlier message. Ask the rest one at a time, and stop as soon as the remaining answers would not change the output.
Never invent an answer. If the user does not know, record it as unknown and carry on.
Hold the answers in this shape. It stays internal - it is not shown to the user unless they ask, and it never carries a value the user did not give.
module: internal-communication
intent: null # setup | advice | review | fix | build | convert | export
scale: null # Starter | Growth | Scale, only if the answer changes it
areas:
"Channels": null
"Cadence": null
"Ownership": null
"Current process": null
"Outcome": null
requested_outputs: [] # csv | sql | json | notion | xlsx - requested formats only
confirmed_facts: [] # only what the user actually said
open_questions: [] # the unanswered ones, in the order worth askingIf an artifact was requested, build it after resolving essential missing facts. Otherwise give a short recommendation and offer the relevant artifact.
Recommended approach: Fix the ownership and the cadence first. Channels follow from that, and consolidating channels is usually the useful change.
Why this one: Internal comms rarely fail for lack of channels. They fail because nobody owns one and the format is inconsistent.
Workflow: Channel owned → Cadence set → Message drafted → Published → Read or acknowledged
Once the user asks for it, derive the fields from the confirmed context and emit the requested artifacts. For machine-readable text, keep prose outside the data; for files, provide a usable link. Report material validation failures or limitations separately.
A selected Notion output is rendered by notion-manual-import, so route the
Notion step there. When the user selects Notion, hand that step to
@notion-manual-import: it holds the CSV, the property
mapping, the import steps and the verification checklist, and it renders the Field
Reference below instead of defining a table of its own. Do not restate the mapping
here and do not improvise the import steps. Manual CSV and mapping outputs need no
connection. For requested workspace changes, follow the shared contract: verify actual
tool access and the target before writing. A user saying "connected" is not tool evidence.
Never ask for a Notion password or token.
For an Excel-compatible CSV, use UTF-8 with a byte order mark so Excel opens the
text correctly. A CSV is not an .xlsx workbook; create .xlsx only when the user
requests a workbook.
A CSV carries no types, so after it, name the columns
that need a number, date or currency format applied.
Communication Title,Type,Date,Department,Host,Attendees,Agenda,Action Items,Follow-up Date,Meeting Link,Status,Communication ID
March All Hands,Announcement,2026-01-15,Delivery,Karan Malhotra,All employees,1. All-hands 2. Policy change 3. New joiners,Confirm budget with finance; circulate the revised scope.,2026-01-15,https://meet.example.com/abc,Sent,CREATE TABLE internal_communication (
communication_title VARCHAR(255),
type VARCHAR(100) NOT NULL,
date DATE NOT NULL,
department VARCHAR(255),
host VARCHAR(255),
attendees VARCHAR(255),
agenda VARCHAR(255),
action_items VARCHAR(255),
follow_up_date DATE NOT NULL,
meeting_link TEXT,
status VARCHAR(100) NOT NULL,
communication_id SERIAL PRIMARY KEY,
created_at TIMESTAMP DEFAULT NOW(),
updated_at TIMESTAMP DEFAULT NOW()
);
CREATE INDEX idx_internal_communication_status ON internal_communication (status);{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Internal Communication",
"type": "object",
"additionalProperties": false,
"properties": {
"Communication Title": { "type": "string" },
"Type": { "type": "string" },
"Date": { "type": "string", "format": "date" },
"Department": { "type": "string" },
"Host": { "type": "string" },
"Attendees": { "type": "string" },
"Agenda": { "type": "string" },
"Action Items": { "type": "string" },
"Follow-up Date": { "type": "string", "format": "date" },
"Meeting Link": { "type": "string", "format": "uri" },
"Status": { "type": "string" },
"Communication ID": { "type": "integer" }
},
"required": [
"Type",
"Date",
"Follow-up Date",
"Status"
]
}| CSV column | Notion property | Set after import |
|---|---|---|
| Communication Title | Title | Use as the database title |
| Type | Select (add options after import) | Convert to Select, add options: "Announcement", "Update", "Policy", "Newsletter", "Escalation" |
| Date | Date | Convert to Date |
| Department | Text | Leave as Text |
| Host | Text | Leave as Text |
| Attendees | Text | Leave as Text |
| Agenda | Text | Leave as Text |
| Action Items | Text | Leave as Text |
| Follow-up Date | Date | Convert to Date |
| Meeting Link | URL | Convert to URL |
| Status | Select (add options after import) | Convert to Select, add options: "Draft", "Scheduled", "Sent", "Acknowledged", "Archived" |
| Communication ID | Text (preserve source ID) | Keep imported IDs as Text; optionally add a separate Unique ID property |The rows above are documentation examples only. Emit empty templates unless the user explicitly requests examples. Money stays currency, dates stay date,
and anything pointing at another table stays relation.
| # | Field | Type | SQL | JSON Schema | Notion | CSV example |
|---|---|---|---|---|---|---|
| 1 | Communication Title | text | VARCHAR(255) | string | Text | March All Hands |
| 2 | Type | select | VARCHAR(100) | string | Select (add options after import) | Announcement |
| 3 | Date | date | DATE | string, format: date | Date | 2026-01-15 |
| 4 | Department | text | VARCHAR(255) | string | Text | Delivery |
| 5 | Host | text | VARCHAR(255) | string | Text | Karan Malhotra |
| 6 | Attendees | text | VARCHAR(255) | string | Text | All employees |
| 7 | Agenda | text | VARCHAR(255) | string | Text | 1. All-hands 2. Policy change 3. New joiners |
| 8 | Action Items | text | VARCHAR(255) | string | Text | Confirm budget with finance; circulate the revised scope. |
| 9 | Follow-up Date | date | DATE | string, format: date | Date | 2026-01-15 |
| 10 | Meeting Link | url | TEXT | string, format: uri | URL | https://meet.example.com/abc |
| 11 | Status | select | VARCHAR(100) | string | Select (add options after import) | Sent |
| 12 | Communication ID | id | SERIAL PRIMARY KEY | integer | Text (preserve source ID) | (blank) |
Type
Announcement | Update | Policy | Newsletter | EscalationStatus
Draft | Scheduled | Sent | Acknowledged | ArchivedLink fields: none
Prompt
News is scattered across five chats and nobody knows what is official.Context first - one question per message, nothing already answered:
Q: Which channels? A: Two chats and email.
Q: Cadence? A: No set cadence.
Q: Who owns them? A: Nobody specific.
Recommended next step - offered, not built:
Fix the ownership and the cadence first. Channels follow from that, and consolidating channels is usually the useful change.
Workflow: Channel owned → Cadence set → Message drafted → Published → Read or acknowledged
Want the CSV, SQL, JSON Schema and Notion mapping for this?
relation for anything that points at another table, text only for free text.currency, never text. Dates are date, never free text.I want to set up structured comms for my company.
Ask me one short question at a time, and only about what I have not already told you.
Then recommend the smallest setup that fits, and wait for me to ask before you build it.
When I ask, output CSV, SQL DDL, JSON Schema, a Notion property mapping or an Excel workbook. Data only.© sickn33, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/internal-communication of sickn33/agentic-awesome-skills.
Open the folder on GitHubat commit ec02547
We found 5 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in sickn33/agentic-awesome-skills, which our catalogue first saw on October 7, 2026.
Internal Communication next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Internal Communication this skillsickn33/agentic-awesome-skills | 47k | 1 repos | ~3.4k | Automated safety check: Pass | MIT | |
| Internal Communications Writeranthropics/skills | 180k | 38 repos | ~378 | Automated safety check: Pass | Apache-2.0 | |
| Natural Japanese Business Writingcoji/natural-japanese | 1.9k | — | ~2.1k | Automated safety check: Pass | MIT | |
| My Weekly Reportmeain/dotfiles | 285 | — | ~2.5k | Automated safety check: Pass | MIT | |
| Updatesjtenniswood/espframe | 209 | — | ~527 | Automated safety check: Pass | Custom licence | |
| Updateakseolabs-seo/AK-Threads-booster | 275 | — | ~1.1k | Automated safety check: Notes | MIT |
anthropics/skills
A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill…
coji/natural-japanese
Writes and edits Japanese business documents so they read clearly and naturally, removes AI-sounding phrasing and can score how AI-like a text reads.
meain/dotfiles
Generate a concise weekly status update in team format. An agent skill from meain/dotfiles.
jtenniswood/espframe
Summarize user-facing changes made to this project over the last 7 days.
akseolabs-seo/AK-Threads-booster
Check AK-Threads-Booster for upstream GitHub updates, safely fast-forward the local skill repo, or install an opt-in weekly Codex automation that keeps the skill on the latest version.
sgharlow/claude-code-recipes
Turn scattered weekly updates (notes, emails, task exports, meeting notes) into a structured status report with highlights, progress, severity-rated blockers, and next-week priorities.
sickn33/agentic-awesome-skills
Implements an interface in one of two named color modes, iridescent white or colorful black, from a parameterized starter that reports measured color intensity.
sickn33/agentic-awesome-skills
Saves a user's project decisions, rules and preferences into a project-local mdbase so later sessions and other agents can recover the intent.
sickn33/agentic-awesome-skills
Keeps project decisions, research and verified results available across coding-agent sessions through LWC memory, a document Wiki graph and a CodeGraph code index.
sickn33/agentic-awesome-skills
Guides an agent through assessing its own owner for cofounder fit, publishing an approved profile, and ranking complementary profiles other agents published for their owners.
sickn33/agentic-awesome-skills
Acts as a proxy for the Cline CLI, dispatching coding tasks one at a time, monitoring runs by hard evidence, relaying decisions to you and learning per-project preferences.
sickn33/agentic-awesome-skills
Drafts and reviews audience-specific content from supplied brand examples, with local scripts for brand voice and SEO diagnostics, channel templates and a content calendar.
Categories
Internal communication log: title, type, date, department, host and attendees, agenda, action items, follow-up date, meeting link and delivery status. Internal Communication is an agent skill from sickn33/agentic-awesome-skills. Internal communication log: title, type, date, department, host and attendees, agenda, action items, follow-up date, meeting link and delivery status.
Internal Communication fits situations like: internal comms tracking; tasks that involve Internal communications.
Run `npx skills add sickn33/agentic-awesome-skills --skill internal-communication -a claude-code`. Or copy the skill folder (skills/internal-communication in sickn33/agentic-awesome-skills) into .claude/skills/internal-communication in your project. Claude Code loads it when a task matches its description.
Run `npx skills add sickn33/agentic-awesome-skills --skill internal-communication -a codex`. Or copy the skill folder (skills/internal-communication in sickn33/agentic-awesome-skills) into .agents/skills/internal-communication in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add sickn33/agentic-awesome-skills --skill internal-communication -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/internal-communication, .gemini/skills/internal-communication, .github/skills/internal-communication and .opencode/skills/internal-communication in your project.
SKILL.md names no scripts, command-line tools or credentials: Internal Communication is instructions for the agent only.
SKILL.md names 1 domain. In commands or code: json-schema.org; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Internal Communication is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.4k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Internal Communication: Internal Communications Writer (anthropics/skills, 180k stars), Natural Japanese Business Writing (coji/natural-japanese, 1.9k stars), My Weekly Report (meain/dotfiles, 285 stars) and Updates (jtenniswood/espframe, 209 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
sickn33 (a GitHub user) maintains it in sickn33/agentic-awesome-skills, which has 47,343 GitHub stars. The repository holds 1,354 skills in this directory. The repository was last updated on October 7, 2026.
Source: sickn33/agentic-awesome-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.