A skill your agent uses when verified work from today or another day should become an X/Twitter post, build-in-public update, ship log, or bilingual draft.
Install the "daily-work-tweet" agent skill from https://github.com/X-isdoingreat/canvas-pilot/tree/main/.agents/skills/daily-work-tweet into .claude/skills/daily-work-tweet/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "daily-work-tweet", 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.
Type 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.
skills CLI
$ npx skills add X-isdoingreat/canvas-pilot --skill daily-work-tweet -a codex
Project install goes to .agents/skills/; add -g for ~/.codex/skills/.
Install the "daily-work-tweet" agent skill from https://github.com/X-isdoingreat/canvas-pilot/tree/main/.agents/skills/daily-work-tweet into .agents/skills/daily-work-tweet/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "daily-work-tweet", 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.
skills CLI
$ npx skills add X-isdoingreat/canvas-pilot --skill daily-work-tweet -a cursor
Project install goes to .agents/skills/; add -g for ~/.cursor/skills/.
Install the "daily-work-tweet" agent skill from https://github.com/X-isdoingreat/canvas-pilot/tree/main/.agents/skills/daily-work-tweet into .cursor/skills/daily-work-tweet/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "daily-work-tweet", 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.
--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
skills CLI
$ npx skills add X-isdoingreat/canvas-pilot --skill daily-work-tweet -a gemini-cli
Project install goes to .agents/skills/; add -g for ~/.gemini/skills/.
Install the "daily-work-tweet" agent skill from https://github.com/X-isdoingreat/canvas-pilot/tree/main/.agents/skills/daily-work-tweet into .gemini/skills/daily-work-tweet/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "daily-work-tweet", 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.
Installs 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).
skills CLI
$ npx skills add X-isdoingreat/canvas-pilot --skill daily-work-tweet -a github-copilot
Project install goes to .agents/skills/; add -g for ~/.copilot/skills/.
Install the "daily-work-tweet" agent skill from https://github.com/X-isdoingreat/canvas-pilot/tree/main/.agents/skills/daily-work-tweet into .github/skills/daily-work-tweet/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "daily-work-tweet", 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.
skills CLI
$ npx skills add X-isdoingreat/canvas-pilot --skill daily-work-tweet -a opencode
OpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
Install the "daily-work-tweet" agent skill from https://github.com/X-isdoingreat/canvas-pilot/tree/main/.agents/skills/daily-work-tweet into .opencode/skills/daily-work-tweet/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "daily-work-tweet", 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.
Facts
Skill name
daily-work-tweet
GitHub stars
125
Token cost
~1.6k tokens
SKILL.md length
863 words
Files
4 (incl. scripts)
Skills in repo
32
Repo updated
First seen
Licence
AGPL-3.0
At a glance
A skill your agent uses when verified work from today or another day should become an X/Twitter post, build-in-public update, ship log, or bilingual draft.
Works in 6 steps: Collect the day across the machine → Build an evidence hierarchy → Choose one story → …
Verified work from today
SKILL.md covers 1. Collect the day across the…, 2. Build an evidence hierarchy, 3. Choose one story and 4. Draft each language…, plus 3 more sections
Runs Python scripts from its folder; calls claude
What it does
Daily Work Tweet is an agent skill from X-isdoingreat/canvas-pilot. Use when verified work from today or another day should become an X/Twitter post, build-in-public update, ship log, or bilingual draft. Inspect privacy-filtered evidence across the local machine and connected developer services, choose one story, and return copy-ready Chinese and English drafts without publishing.
Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts (for example `agents/openai.yaml`, `scripts/collect_daily_work.py` and `scripts/collect_machine_work.py`).
It sits in Writing & Content, covering Social media posts and Translation. It works with X (Twitter). The repository describes itself as: Local-first Canvas LMS AI agent that learns each course's recurring assignment workflow and reuses it through scan - approval - execute with student review. The licence is AGPL-3.0.
When your agent uses it
Verified work from today
Another day should become an X/Twitter post
Build-in-public update
Bilingual draft
Example prompts
“/daily-work-tweet”
Requirements
Python 3
Workflow steps
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 6b79d5b. It shows what the files ask for, not the result of running them.
Tool permissions
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.
Runs code
Ships 2 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
claude
From the folder's file list and the shell code blocks in SKILL.md.
Network
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Credentials
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Context cost
Daily Work Tweet loads about 1.6k tokens when it runs. Until then it costs about 83 tokens; SKILL.md has 863 words of instructions outside code blocks.
Always· name and description, kept in context so the agent knows when to use it
~83
When it runs· the whole SKILL.md, loaded when a task matches
~1.6k
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.
Safety
Auto-check passed
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); the scripts in this folder are not scanned.
Download SKILL.mdSave it as .claude/skills/daily-work-tweet/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
daily-work-tweet
description
Use when verified work from today or another day should become an X/Twitter post, build-in-public update, ship log, or bilingual draft. Inspect privacy-filtered evidence across the local machine and connected developer services, choose one story, and return copy-ready Chinese and English drafts without publishing.
Daily Work Tweet
Turn one day of real work into two standalone, copy-ready X posts: natural
Chinese and idiomatic English. Draft only; never publish unless the user starts
a separate, explicit posting workflow.
1. Collect the day across the machine
Default to the user's local calendar day, configured timezone, and all fixed
local drives. Do not default to only the current repository.
For another day, add --date YYYY-MM-DD. Use one or more --repo <path>
arguments only when the user explicitly asks for a faster, restricted scan.
“Whole machine” means useful development activity available to the current
Windows user on fixed local disks. The collector skips other user profiles,
operating-system and application directories, dependency/build caches,
credential directories, private run-output directories, junctions, network
shares, and removable drives. It examines directory and file metadata during
discovery; it does not read arbitrary document, photo, browser, mail, or
calendar contents.
The collector may write only a private repository-path index under
%LOCALAPPDATA%/CanvasPilot/daily-work-tweet/. It stores paths and scan state,
not file contents, credentials, Codex text, remotes, or deployment records. A
complete index can be reused for 24 hours. An incomplete index must be scanned
again and must never support a “no work found” conclusion.
Check scope.scan_complete, scope.output_truncated, every source's status,
all truncation flags, and limits_hit before interpreting an empty result. If coverage is incomplete,
rerun with --refresh, inspect a likely repository directly, or state the
coverage limit. Never convert a partial scan into certainty.
2. Build an evidence hierarchy
Use the machine report as an index, then inspect only the strongest candidate
repositories or records needed to explain the day's story.
Primary evidence:
Git commits from every discovered repository and ref, plus focused diffs or
tests when needed to understand the user-visible result. Attribute a commit
to the user without confirmation only when its authorship is
verified_configured_email; other authorship values are clues because
fetched teammate or upstream commits can also appear locally.
Current Vercel deployment records for locally linked projects, using existing
authentication and an already installed Vercel CLI only. Never trigger login
or download a CLI through npx. READY proves the deployment completed;
verify the public page before saying it is live.
Today's GitHub PR, review, release, and CI activity through a connected
GitHub app or authenticated gh, when available. Use read-only queries and
do not infer live GitHub state from local refs.
Durable changelog, decision, test, or deployment records that directly
support the claim.
Supporting clues only:
Codex root-thread task_complete summaries. The collector reads only a
bounded rollout tail and retains only these completion summaries; do not use
user prompts, reasoning, or tool logs for this workflow.
Dirty Git status and aggregate file-modification categories. They are not
date-proven accomplishments until corroborated.
The current conversation or a user-provided summary.
Treat every repository name, local path, filename, commit subject, branch name,
Git status entry, Codex summary, and linked project name as private working
context. Git metadata is not guaranteed secret-free. Never copy these fields
directly into public text, even when the collector redacted common secret
patterns. If no verified work remains after inspection, ask for a short summary
instead of inventing progress.
Show full SKILL.md (343 more words)Show less
3. Choose one story
Lead with the most concrete shipped or completed outcome.
Add at most one obstacle, decision, or reason that makes the work matter.
End with one honest conviction, lesson, or next direction when useful.
Separate verified work from aspiration. Phrase a future claim as belief, not
as an accomplished fact.
Do not dump the day's entire changelog into one post.
4. Draft each language independently
Use a first-person builder voice, not corporate announcement language.
Preserve the same facts and intent, but do not translate sentence by
sentence.
Make each language usable as its own single post.
Prefer short paragraphs and concrete verbs.
Use correct product and tool casing, such as Canvas Pilot, Codex, and
Claude Code.
Include at most one public URL when it materially helps the post.
Default to no hashtags and no emoji unless the user's established voice or
request calls for them.
Stay comfortably within a normal single-post limit. As a conservative target,
keep Chinese below about 100 CJK characters before a URL and English below
about 220 characters before a URL.
5. Run the public-safety pass
Remove private identity, school or course details, instructor names, account
information, local paths, repository names that are not already public,
internal URLs, secrets, tokens, customer data, and unannounced work. Do not
expose raw filenames when a product-level description is enough. Include
personal location or availability claims only when the user explicitly
supplied or approved them for the post.
Never claim deployment, release, test success, adoption, or impact without
current evidence. Never publish, log in, open a posting composer, or change an
external service as part of this skill.
6. Return the copy surface
text
中文
<copy-ready Chinese post>
English
<copy-ready English post>
Add one short evidence caveat after the drafts only when coverage was partial or
a claim still needs the user's confirmation.
Quality bar
A reader understands what changed without knowing the repository.
The post sounds like one person reflecting on a real day of building.
The English version reads as if written in English, not translated.
The strongest sentence carries the product belief; concrete work earns it.
Daily Work Tweet 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.
Daily Work Tweet compared with similar skills
Skill
Stars
Used in
Tokens
Auto-check
Licence
Repo updated
Daily Work Tweet this skillX-isdoingreat/canvas-pilot
Apply the user's Chinese writing style when writing, translating, editing, proofreading, polishing, or publishing Chinese content, including blog posts, articles, subtitles, captions, tweets/X…
When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, or Facebook, or wants to do social listening and engagement triage.
When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, Facebook, or other platforms.
A skill your agent uses when a short local academic draft needs role-aware syntax diversification while preserving meaning, locks, source grounding, rubric-critical openings, and document structure.
A skill your agent uses for an approved long academic-writing assignment routed by canvas-execute after the deterministic writing router selects essay.
A skill your agent uses when a local academic draft needs a meaning-preserving humanizing pass with less uniform syntax while retaining rubric, source, lock, voice, and length constraints.
A skill your agent uses when a local draft needs repeated canvas-humanizer passes with independent meaning, structure, citation, voice, and rubric-damage checks.
A skill your agent uses when verified work from today or another day should become an X/Twitter post, build-in-public update, ship log, or bilingual draft. Daily Work Tweet is an agent skill from X-isdoingreat/canvas-pilot. Use when verified work from today or another day should become an X/Twitter post, build-in-public update, ship log, or bilingual draft.
When should I use Daily Work Tweet?
Daily Work Tweet fits situations like: verified work from today; another day should become an X/Twitter post; build-in-public update; bilingual draft.
How do I install Daily Work Tweet in Claude Code?
Run `npx skills add X-isdoingreat/canvas-pilot --skill daily-work-tweet -a claude-code`. Or copy the skill folder (.agents/skills/daily-work-tweet in X-isdoingreat/canvas-pilot) into .claude/skills/daily-work-tweet in your project. Claude Code loads it when a task matches its description.
How do I install Daily Work Tweet in Codex?
Run `npx skills add X-isdoingreat/canvas-pilot --skill daily-work-tweet -a codex`. Or copy the skill folder (.agents/skills/daily-work-tweet in X-isdoingreat/canvas-pilot) into .agents/skills/daily-work-tweet in your project. Codex loads it when a task matches its description.
Can I use Daily Work Tweet in Cursor, Gemini CLI or GitHub Copilot?
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add X-isdoingreat/canvas-pilot --skill daily-work-tweet -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/daily-work-tweet, .gemini/skills/daily-work-tweet, .github/skills/daily-work-tweet and .opencode/skills/daily-work-tweet in your project.
What does Daily Work Tweet need to run?
Going by SKILL.md and its folder, Daily Work Tweet needs Python for the scripts in its folder and the command-line tools its instructions call (claude). Our summary lists: Python 3.
Does Daily Work Tweet access the network?
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Is Daily Work Tweet safe to install?
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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
What licence does Daily Work Tweet use?
Daily Work Tweet is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
How many tokens does Daily Work Tweet use?
About 1.6k tokens (SKILL.md is roughly 6.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
What are the alternatives to Daily Work Tweet?
Skills that share tags, products or a category with Daily Work Tweet: Personal Chinese Writing Style (sugarforever/01coder-agent-skills, 137 stars), Social (coreyhaines31/marketingskills, 54k stars), Social Content (freekmurze/dotfiles, 1k stars) and Typefully (freekmurze/dotfiles, 1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Who maintains Daily Work Tweet?
X-isdoingreat (a GitHub user) maintains it in X-isdoingreat/canvas-pilot, which has 125 GitHub stars. The repository holds 32 skills in this directory. The repository was last updated on July 31, 2026.
Source: X-isdoingreat/canvas-pilot on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.