agentleFS
eklavyagoyaleklavyagoyal/wingman/skills/patterns/SKILL.md

patterns

Skill0 starsChanged 2 months agoMITView on GitHub

Analyze what is actually working - especially whether German or English applications get you more responses

15 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

1 rule. 0 are common, 1 is distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 11 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Do not manufacture a narrative from noise: If the difference is within a couple of applications, say it is not yet a signal.

    line 65

“Common” is measured: kept by at least 6 in 10 of the 11 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Patterns

Reads the whole history and finds what is working. Needs roughly 15+ applications before the numbers mean anything — say so plainly if there are fewer, and give the raw counts instead of percentages that imply confidence they do not have.

Step 0: Read the history

SourceCarries
DATA_DIR/tracker.mdOne row per application: Board, Score, Lang, Found, Applied, Reply, Status. Most cuts come from here. Check it against shared/references/tracker.md integrity rules first — an analysis over inconsistent rows is worse than none.
DATA_DIR/job-history.mdEverything ever seen, including what was discarded and why. The only place the discard rate lives.
DATA_DIR/jobs/*/applied.mdWhich ATS each application was filed through, and what was attached. Needed for the By ATS cut; read the folders only for that.
DATA_DIR/jobs/*/evaluation.mdThe score's reasoning, when checking whether the scoring is calibrated.

State which cuts you could not compute, and why. A blank Board column across older rows means the by-board analysis covers only part of the history — say that, with the counts, rather than presenting a partial cut as the whole picture. Silence there turns a data gap into a wrong conclusion.

The flagship metric: DE vs EN response rate

This is the question no other tool can answer, because no other tool records the language decision per application.

Application language — response rates

              Sent   Response   Gespräch   Rate
  Deutsch       11        5          3      45%
  English       14        3          1      21%

Split by employer type:
  Mittelstand      DE 6/7 responded · EN 0/3 responded
  Startup          DE 1/2           · EN 3/8
  Konzern          DE 2/2           · EN 0/3

Reading: your German applications are outperforming, and the gap is
almost entirely Mittelstand and Konzern. Your three English
applications to Mittelstand employers got nothing. Startups are the
one place English is working for you.

Suggested change: default to German for anything that is not a
startup or international tech. Your recorded German is B2 — the
letters are working, so this looks like a real signal, not luck.

That reframing is the product. A candidate who learns this after 25 applications instead of 100 has bought back months.

Other cuts

AnalysisQuestion answered
By boardWhich boards produce responses, not just listings. Arbeitsagentur vs StepStone vs LinkedIn often differ sharply.
By ATSWhere applications die. A near-zero rate through one ATS can mean a broken upload rather than rejection.
By scoreDo 4.5s actually convert better than 3.5s? If not, the scoring is miscalibrated — say so.
By employer typeStartup / Mittelstand / Konzern / öffentlicher Dienst conversion.
By stage reachedWhere the funnel leaks: no response, post-CV, post-interview. Each implies a different fix.
Rejection reasonsRecurring reasons across Absage rows.
Zeitarbeit ratioHow much of the pipeline is leased-labour listings — often higher than the user realizes.
Time to responseActual observed times per employer type, to calibrate the follow-up table to reality.

Rules

  • Report the sample size with every number. "3 of 4" not "75%" when n is 4.
  • Do not manufacture a narrative from noise. If the difference is within a couple of applications, say it is not yet a signal.
  • Distinguish correlation from cause. More German responses may reflect which employers were applied to, not the language. Check the split before claiming the language caused it.
  • Name the fix. An analysis with no recommended change is just a chart.
  • Where the data says the scoring is wrong, say that too. Being wrong quietly is worse.

Output

Save to DATA_DIR/patterns.md with the date and sample size. Offer to update preferences.md and the default language preference in profile.md based on what was found — with the user's approval, never automatically.


Response Format

  1. Language — DE vs EN response rates, split by employer type
  2. Funnel — where applications die
  3. What Is Working — boards, employer types, scores
  4. Suggested Changes — concrete, with the evidence and the sample size

Permissions

{ "permissions": { "allow": [
  "Read(~/.wingman/**)", "Write(~/.wingman/**)", "Edit(~/.wingman/**)"
] } }

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.