ai-job-hunter-app: Instructions file for Codex

AGENTS.md

ai-job-hunter-app AGENTS.md is an instructions file for Codex, OpenCode from saeedkolivand/ai-job-hunter-app. It costs 2,536 tokens per session, scanned A, original, Apache-2.0.

Repository instructions for the ai-job-hunter-app project, covering its agent rules, privacy requirements, tools, architecture, and ESLint configuration.

In plain words
What is it for?
Use them when working in that repository, especially for path privacy, shell commands, architecture, and lint configuration.
Why use it?
They give coding agents the project-specific constraints needed to make changes safely and consistently.

Instructions file for CodexOpenCode

Written for Codex and OpenCode: the file is AGENTS.md. Also seen: mentions CLAUDE.md; mentions subagents; mentions Claude Code.

This is saeedkolivand/ai-job-hunter-app's own configuration. It tells Codex and OpenCode how to work on ai-job-hunter-app itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything ai-job-hunter-app configures →

Reuse

Borrowing it

Nothing to install: this file belongs to saeedkolivand/ai-job-hunter-app. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/saeedkolivand/ai-job-hunter-app/main/AGENTS.md
Clone the repo
git clone --depth 1 https://github.com/saeedkolivand/ai-job-hunter-app

Made for: Codex, OpenCode.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for ai-job-hunter-app AGENTS.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/saeedkolivand/ai-job-hunter-app/agents-md/github.svg)](https://agentmods.dev/instructions/saeedkolivand/ai-job-hunter-app/agents-md)
Your own site
<a href="https://agentmods.dev/instructions/saeedkolivand/ai-job-hunter-app/agents-md"><img src="https://agentmods.dev/badge/instructions/saeedkolivand/ai-job-hunter-app/agents-md/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for ai-job-hunter-app AGENTS.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/saeedkolivand/ai-job-hunter-app/agents-md"><img src="https://agentmods.dev/badge/instructions/saeedkolivand/ai-job-hunter-app/agents-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 2,536 This file is loaded in full into every session.
When invoked 2,536 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.02536 $0.02536
Opus 5.5 $0.01014 $0.01014
Sonnet 5.5 $0.00507 $0.00507
Haiku 4.5 $0.00254 $0.00254

Measured 21d ago against content hash d28fc7489059, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

ai-job-hunter-app AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 21d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

AGENTS.md · 84 lines

How it starts

The opening of the file, as written. The whole thing — 84 lines — stays where its author put it; the contents beside it link to each section on GitHub.

AI Job Hunter: Agent Rules

Canonical rules for every AI coding agent on this repo. Enforced by ESLint, TypeScript, commitlint, and CI. Violations block commits and fail the build.

Cursor and Windsurf read this file natively; Copilot does too, but not in every feature, so the thin .github/copilot-instructions.md pointer stays. Claude Code reads it through the @AGENTS.md import at the top of CLAUDE.md, which adds Claude-only orchestration (subagent fleet, review gates, model tiering) on top. Cline reads it via the pointer in .clinerules.

IMPORTANT: edit rules here, never fork them into a tool-specific file. 13 parallel copies drifted badly enough to teach a stale UI-primitive set and hide a whole app; pnpm check:agent-system now guards against a repeat.


Path privacy

Never output absolute paths, usernames, home dirs, drive letters, or temp/IDE paths, anywhere (logs, PRs, commits, docs, screenshots, stack traces). Always repo-relative (apps/desktop/src-tauri/src/main.rs); the same rule applies to Git Bash-style paths (/c/Users/…).

Shell & tooling

Use Bash (never PowerShell). rg not grep · fd not find · bat not cat · pnpm not npm/yarn. Never find -exec.


Architecture

Local-first desktop app, pnpm monorepo. Tauri is the shell. Detail → docs/ARCHITECTURE.md, status → docs/ARCHITECTURE_STATUS.md, principles → docs/PATTERNS.md §13.

Workspaces: packages/{shared,ui,prompts,translations,test-ids} (contracts · design system · prompt templates · i18n · test IDs) and apps/{desktop,extension,landing} (Tauri app · MV3 extension · Next.js site). Boundaries are rule 12: they are enforced, not stylistic.

Renderer → shell only via AppClient (createTauriInvokeClient() in apps/desktop/src/tauri-client/index.ts). IPC contract: packages/shared/src/ipc/contracts/. Dev: pnpm dev.


Rules (enforced: full config in eslint.config.mjs)

  1. PRs only, never push to main. Branch → commit → push → gh pr create → wait for approval.
  2. No window.api in UI. Use service hooks from apps/desktop/src/renderer/services/ (React Query).
  3. i18n from @ajh/translations, never react-i18next/i18next directly. Init shim: @/i18n.
  4. No hardcoded brand colors. text-brand/bg-brand/… or var(--color-brand). [#RRGGBB] errors.
  5. No inline transition objects. import { transition } from '@ajh/ui'.
  6. Always @ajh/ui primitives: Button, Input, TextArea, NumberField, Dropdown, Switch, ModalShell, ConfirmModal, EmptyState, ErrorState, RowSkeleton/CardSkeleton, GlassCard, SettingsSection, OptionTile, StreamingText. Raw <button>/<select>/<textarea> error (except <input type=range|file|checkbox|radio|hidden>). PageShell from @/components/layout/PageShell; UpdateBanner from @/components/ui/UpdateBanner.
  7. Package entrypoints, not deep paths. @ajh/ui directly; prefer React.ComponentProps<typeof X>.
  8. Import order (blank line between): node:* → external → @ajh/* → @/* → relative. pnpm lint:fix.
  9. import type for pure types (auto-fixed; never suppress).
  10. File placement under renderer/: features/ (one route), components/ui/, components/layout/, services/ (IPC hooks), lib/ (pure utils + machines/), hooks/, providers/, store/. Never import across feature dirs.
  11. State machines for 3+ states → lib/machines/ + useMachine from @/hooks/use-machine.
  12. Remote data via React Query service hooks: no useState + useEffect fetching.
  13. Package boundaries: shared no React/Node · ui no Zustand/IPC/routing · prompts no UI/window · translations no app/IPC imports.
  14. Stale-branch check before work: git fetch origin && git branch -r | rg $(git branch --show-current).
  15. New IPC capability (5 steps): ipc/contracts/ → commands/ → tauri-client/ → a services/ hook → query key in services/query-client/. Then pnpm gen:api — docs/API.md is generated from the contracts and CI fails on drift; document the method with TSDoc on the contract, never by editing that page.
  16. Never bypass ESLint: no // eslint-disable, no @ts-ignore. Scoped override in eslint.config.mjs with a reason. CI runs lint:strict --max-warnings 0.
  17. Backend work must survive navigation. A subscription only receives events while its component is mounted; the Rust work it describes does not unmount. Progress state kept in a route component is discarded on navigation, and the terminal event is dropped — so the UI shows idle for work still running. Mount subscriptions from routes/__root.tsx or a provider, and read in-flight truth from the backend (persisted status / the job registry), not from local state. Enforced: pnpm check:event-subscriptions fails until every subscribing file is declared with its mount lifetime.
  18. Docs under docs/ are thin pointers, never copies. Describe shape and contracts and point at the owning source symbol; never paste drift-prone literals — weights, thresholds, counts, signatures, enum members, file lists. The test before you save: for every number or name on the page, ask "if someone changed this in the code tomorrow, would this page silently become a lie?" If yes, replace it with a pointer to where it lives. This is the most frequently-raised review finding on this repo. Generated pages are never hand-edited — a file opening with a GENERATED FILE banner (docs/API.md) is rendered by a script, so fix the TSDoc on the contract member and re-run its generator (pnpm gen:api); editing the page fails pnpm gen:api:check in CI.
  19. Small Rust files, tests out of line. Every .rs file under apps/desktop/src-tauri/src (tests included) stays under the HARD_CAP_LOC in tests/architecture.rs (R8), counting code lines only — blank and comment lines are free; a file that genuinely reads worse split may go up to R8_EXCEPTION_CEILING if listed in R8_EXCEPTIONS with its reason. Split by responsibility (sub-modules), never arbitrary chunks — and shrink while you split: a split that only spreads the same lines over more files is incomplete; deduplicate (DRY), simplify (KISS), one responsibility per module/fn (SOLID), delete dead and speculative code (YAGNI), and trim restated-code comments, with behaviour and test assertions unchanged. Tests use Rust's standard out-of-line layout, never inline mod tests { … } and never #[path]: the tests of foo.rs live in foo/tests.rs, declared with #[cfg(test)] mod tests; (for dir/mod.rs, dir/tests.rs); a large suite becomes foo/tests/<topic>.rs (R8b). Existing offenders are ratcheted in tests/r8_baseline.txt / tests/r8b_inline_tests_baseline.txt: they may shrink, never grow; regenerate with R8_BLESS=1 cargo test --test architecture only after a split.
  20. Small TS/TSX files. The same rule for every tracked .ts/.tsx file (tests included, .d.ts excluded): stay under the cap in scripts/check-ts-size.mjs, counting code lines only, and shrink while you split, exactly as rule 18 says. Split a component into sub-components and hooks inside its own feature dir (rule 9), a large suite into <name>/<topic>.test.ts(x) with shared fixtures. Existing offenders are ratcheted in scripts/data/ts-size-baseline.txt: they may shrink, never grow; regenerate with TS_SIZE_BLESS=1 pnpm check:ts-size only after a split. Tracked in #1323.

Read the full file on GitHub · 84 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 21d ago Changed · +1 lines · +153 tokens per session d28fc7489059
  2. 28d ago Changed · +12 tokens per session ab5fcad19a66
  3. 1mo ago Changed · +98 tokens per session 343cb2fbe65c
  4. 1mo ago Changed · +1 lines · +199 tokens per session d3449ae29e82
  5. 1mo ago First seen · 82 lines · 2,074 tokens per session scan A dc66106fef6f

Subscribe to this mod's changes

ai-job-hunter-app AGENTS.md is an instructions file published in the GitHub repository saeedkolivand/ai-job-hunter-app (62 stars, last pushed today), licensed Apache-2.0. It adds 2,536 tokens to every session, about $0.0101 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

Other instructions, from other repositories

vscode buildNext.instructions.md

Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).

microsoft/vscode · 9,715 tokens

next.js AGENTS.md

AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.

vercel/next.js · 7,786 tokens

vscode oss-third-party-notices.instructions.md

Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, cache eligibility and rollout and applying the notice (cutover).

microsoft/vscode · 5,262 tokens

langchain AGENTS.md

AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.

langchain-ai/langchain · 4,680 tokens

vscode copilot-instructions.md

Copilot instructions for microsoft/vscode, covering vs code copilot instructions, project overview, root folders, core architecture (src/ folder) and built-in extensions (extensions/ folder).

microsoft/vscode · 2,731 tokens

deno copilot-instructions.md

Copilot instructions for denoland/deno, covering deno development guide for github copilot, network access, high level overview, key directories and key files to understand first.

denoland/deno · 3,077 tokens