Github Presence logo

Github Presence

Community
jonathimer
github-presence

When the user wants to optimize their GitHub profile, README, or project discoverability. Trigger phrases include "GitHub README," "README optimization," "GitHub profile," "GitHub stars," "GitHub discoverability," "awesome lists," or "GitHub marketing."

Overview

Publisherjonathimer
Repositorydevmarketing-skills
Skill namegithub-presence
Stars
87
Forks
6
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by jonathimer on GitHub. Read the source before you install it.

Installation

Install the Github Presence AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/jonathimer/devmarketing-skills.git /tmp/devmarketing-skills
mkdir -p .claude/skills
cp -r /tmp/devmarketing-skills/skills/github-presence .claude/skills/github-presence
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Github Presence in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Github Presence on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Github Presence is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

GitHub Presence

GitHub is where developers evaluate your project before trying it. This skill covers README optimization, profile READMEs, discoverability through topics and awesome lists, and using GitHub features for marketing.


Before You Start

  1. Read .agents/developer-audience-context.md if it exists
  2. Audit your current GitHub presence (profile, pinned repos, READMEs)
  3. Understand: GitHub is often the first technical evaluation — optimize accordingly

README Structure

The Anatomy of a Great README

SectionPurposeRequired?
Logo/BannerBrand recognition, visual appealRecommended
BadgesQuick trust signals, statusRecommended
One-linerWhat it does in one sentenceRequired
Hero exampleImmediate "what does it look like?"Highly recommended
FeaturesWhy use this over alternativesRequired
Quick startGet running in < 2 minutesRequired
InstallationAll installation methodsRequired
UsageCore usage examplesRequired
DocumentationLink to full docsRequired
ContributingHow to contributeRecommended
LicenseLegal clarityRequired

README Template

markdown
<div align="center">
  <img src="logo.svg" alt="Project Name" width="200">
  <h1>Project Name</h1>
  <p><strong>One compelling sentence explaining what this does.</strong></p>

  <!-- Badges -->
  <a href="https://github.com/org/repo/actions"><img src="https://github.com/org/repo/workflows/CI/badge.svg" alt="CI"></a>
  <a href="https://www.npmjs.com/package/name"><img src="https://img.shields.io/npm/v/name.svg" alt="npm version"></a>
  <a href="https://github.com/org/repo/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="License"></a>
  <a href="https://discord.gg/invite"><img src="https://img.shields.io/discord/123456789" alt="Discord"></a>

  <br>
  <br>

  <a href="https://docs.example.com">Documentation</a>  <a href="https://example.com">Website</a>  <a href="https://discord.gg/invite">Discord</a>
</div>

---

## Why Project Name?

- **Feature 1** — Brief explanation
- **Feature 2** — Brief explanation
- **Feature 3** — Brief explanation

## Quick Start

```bash
npm install project-name
javascript
import { thing } from 'project-name';

const result = thing.doSomething();
console.log(result);

Installation

npm

bash
npm install project-name

yarn

bash
yarn add project-name

pnpm

bash
pnpm add project-name

Usage

Basic Example

javascript
// Code example with comments

Advanced Example

javascript
// More complex example

Documentation

Full documentation available at docs.example.com

Contributing

We welcome contributions! Please see CONTRIBUTING.md for details.

License

MIT © Your Name


---

## Badges That Matter

### Trust Signal Badges

| Badge | What it shows | When to use |
|-------|--------------|-------------|
| CI/Build status | Code quality | Always |
| Version | Latest release | Always for packages |
| License | Legal clarity | Always |
| Downloads/installs | Adoption | When impressive |
| Coverage | Test quality | If > 70% |
| Security | Audit status | If you have it |

### Community Badges

| Badge | Source | Purpose |
|-------|--------|---------|
| Discord members | shields.io | Show active community |
| GitHub stars | shields.io | Social proof |
| Contributors | shields.io | Open source health |
| Last commit | shields.io | Project activity |

### Badge Services

| Service | URL | Best for |
|---------|-----|----------|
| Shields.io | shields.io | Most badges |
| Badgen | badgen.net | Fast, minimal |
| GitHub badges | Native | Actions, issues |

### Badge Examples

```markdown
<!-- Build status -->
![CI](https://github.com/org/repo/workflows/CI/badge.svg)

<!-- npm version -->
[![npm](https://img.shields.io/npm/v/package-name.svg)](https://www.npmjs.com/package/package-name)

<!-- Downloads -->
[![Downloads](https://img.shields.io/npm/dm/package-name.svg)](https://www.npmjs.com/package/package-name)

<!-- License -->
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)

<!-- Discord -->
[![Discord](https://img.shields.io/discord/SERVER_ID?color=7289da&logo=discord&logoColor=white)](https://discord.gg/invite)

<!-- Stars -->
[![GitHub stars](https://img.shields.io/github/stars/org/repo?style=social)](https://github.com/org/repo)

Profile README

Setting Up Profile README

  1. Create a repository with your username (e.g., github.com/yourname/yourname)
  2. Add a README.md file
  3. This displays on your profile page

Profile README Structure

markdown
# Hi, I'm [Name] 👋

[One sentence about what you do]

## What I'm Working On

- 🔭 Building [project] — [brief description]
- 🌱 Learning [technology]
- 💬 Ask me about [expertise areas]

## Projects

| Project | Description | Stars |
|---------|-------------|-------|
| [Project 1](link) | Brief description | ![Stars](badge) |
| [Project 2](link) | Brief description | ![Stars](badge) |

## Recent Blog Posts

<!-- BLOG-POST-LIST:START -->
<!-- Automated with GitHub Actions -->
<!-- BLOG-POST-LIST:END -->

## Connect

[![Twitter](https://img.shields.io/badge/-Twitter-1DA1F2?style=flat&logo=twitter&logoColor=white)](https://twitter.com/handle)
[![LinkedIn](https://img.shields.io/badge/-LinkedIn-0077B5?style=flat&logo=linkedin&logoColor=white)](https://linkedin.com/in/handle)

## GitHub Stats

![Your GitHub stats](https://github-readme-stats.vercel.app/api?username=yourusername&show_icons=true)

Profile README Best Practices

DoDon't
Keep it scannableWrite paragraphs
Show your best projectsList everything
Include current workLet it get stale
Add contact methodsMake it hard to reach you
Show personalityBe generic

Discoverability

GitHub Topics

Topics are how people find repositories. Optimize for search.

Topic strategyExample
Technologyjavascript, rust, python
Frameworkreact, nextjs, django
Use casecli, api, testing
Categorydeveloper-tools, devops
Problemauthentication, caching

Add topics: Repository settings → Topics (up to 20)

Search Optimization

GitHub search considers:

  1. Repository name — Include main keyword
  2. Description — 350 chars, keyword-rich
  3. README content — Full text indexed
  4. Topics — Category matching
  5. Language — Auto-detected

Awesome Lists

Getting on awesome lists drives traffic and credibility.

StepAction
1Find relevant awesome lists (search "awesome + [topic]")
2Check list requirements (quality, activity, docs)
3Ensure your project meets criteria
4Submit PR following list's guidelines
5Be patient — curation takes time

Popular awesome lists for dev tools:

  • awesome-cli-apps
  • awesome-selfhosted
  • awesome-nodejs
  • awesome-python
  • awesome-go
  • awesome-rust
  • awesome-devops

GitHub Actions for Marketing

Automated README Updates

yaml
# .github/workflows/readme-update.yml
name: Update README

on:
  schedule:
    - cron: '0 0 * * *'  # Daily
  workflow_dispatch:

jobs:
  update:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      # Example: Update blog post list
      - uses: gautamkrishnar/blog-post-workflow@master
        with:
          feed_list: "https://yourblog.com/feed"

      - name: Commit changes
        run: |
          git config --local user.email "action@github.com"
          git config --local user.name "GitHub Action"
          git add -A
          git diff --quiet && git diff --staged --quiet || git commit -m "Update README"
          git push

Metrics and Stats

yaml
# Auto-update GitHub stats image
- uses: lowlighter/metrics@latest
  with:
    token: ${{ secrets.METRICS_TOKEN }}
    filename: github-metrics.svg

Release Announcements

yaml
# Tweet on new release
name: Release Announcement
on:
  release:
    types: [published]

jobs:
  announce:
    runs-on: ubuntu-latest
    steps:
      - name: Tweet
        uses: ethomson/send-tweet-action@v1
        with:
          status: "🚀 ${{ github.repository }} ${{ github.event.release.tag_name }} released! ${{ github.event.release.html_url }}"
          consumer-key: ${{ secrets.TWITTER_CONSUMER_KEY }}
          # ... other secrets

GitHub Sponsors

Setting Up Sponsors

  1. Join GitHub Sponsors (github.com/sponsors)
  2. Create compelling tier descriptions
  3. Set up funding.yml in repos

funding.yml example:

yaml
github: [yourusername]
patreon: yourpatreon
open_collective: yourproject
ko_fi: yourkofi
custom: ["https://buymeacoffee.com/you"]

Sponsor Tiers That Work

TierPriceOffer
Supporter$5/moThanks + name in README
Backer$15/moLogo in README + Discord role
Sponsor$50/moPriority support + feature voting
Enterprise$200+/moDedicated support + consultation

Platform-Specific Do's and Don'ts

Do's

  1. Do optimize your README for first impression
  2. Do use badges for quick trust signals
  3. Do add relevant topics (up to 20)
  4. Do keep your profile README current
  5. Do respond to issues and PRs promptly
  6. Do pin your best repositories
  7. Do include clear installation instructions
  8. Do submit to relevant awesome lists

Don'ts

  1. Don't neglect the README — it's your landing page
  2. Don't use too many badges (cluttered)
  3. Don't let issues pile up unanswered
  4. Don't forget a license file
  5. Don't use low-quality or broken images
  6. Don't write walls of text without structure
  7. Don't ignore contribution guidelines

Measuring Success

GitHub Metrics to Track

MetricWhat it tells youGoal
StarsInterest/bookmarksGrowth over time
ForksActive usageQuality > quantity
ClonesPeople trying itPre-install interest
TrafficProfile/repo viewsAwareness
ReferrersWhere traffic comes fromChannel effectiveness
ContributorsCommunity healthSustainable project

Traffic Insights

Access via: Repository → Insights → Traffic

  • Views and unique visitors
  • Popular content (which files)
  • Referring sites
  • Clone activity

Tools

ToolUse case
OctolensMonitor GitHub for mentions of your project, competitors, and relevant discussions. Get alerts when people talk about problems you solve.
Shields.ioGenerate status badges
GitHub Readme StatsDynamic stats for profile
CarbonBeautiful code screenshots
readme.soREADME generator
MetricsAdvanced profile stats

README Audit Checklist

  • Clear, keyword-rich name and description
  • Badges show CI status, version, license
  • One-liner explains what it does
  • Quick start gets users running in < 2 min
  • Code examples are copy-pasteable
  • All links work and are HTTPS
  • Images have alt text
  • Mobile-readable formatting
  • License file present
  • Contributing guidelines exist
  • Topics are set (up to 20)
  • Social preview image uploaded

Related Skills

  • developer-audience-context — Know who evaluates your repo
  • hacker-news-strategy — HN users check GitHub before upvoting
  • reddit-engagement — Redditors evaluate via GitHub
  • dev-to-hashnode — Link from README to content

Frequently asked questions

What does the Github Presence AI skill do?

When the user wants to optimize their GitHub profile, README, or project discoverability. Trigger phrases include "GitHub README," "README optimization," "GitHub profile," "GitHub stars," "GitHub discoverability," "awesome lists," or "GitHub marketing."

Why use Github Presence on TypingMind?

Because you install it once and use it with any model. Github Presence is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Github Presence in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/jonathimer/devmarketing-skills/tree/main/skills/github-presence. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Github Presence?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Github Presence?

As many as you like. As long as a model supports skills, you can use Github Presence with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Github Presence AI skill free?

Yes. It is published on GitHub by jonathimer under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇