Configuration Files in the AI Job Search Repository: Complete Guide
The ai-job-search repository uses explicit configuration files including .gitignore, opencode.json, GitHub Actions workflows, and Claude framework markdown specs to control tooling, CI pipelines, and environment handling.
The MadsLorentzen/ai-job-search codebase relies on a concise set of configuration files to manage permissions, automate testing, and define skill behaviors. Understanding these configuration files in the ai-job-search repository is essential for contributors who need to modify CI pipelines, adjust TypeScript compiler settings, or customize Claude framework commands.
Core Configuration Files
Version Control and Environment Rules
The .gitignore file defines which files and patterns Git must ignore, ensuring sensitive environment variables and build artifacts remain untracked. According to the repository source code, this file explicitly excludes .env files and local build outputs from version control.
The opencode.json file serves as the central permission and model configuration for the Instagit sandbox. Located at the repository root, this JSON file controls read, write, and execute policies for automated tooling.
import json
import pathlib
config_path = pathlib.Path("opencode.json")
permissions = json.loads(config_path.read_text())
print(permissions["permission"]["read"])
# Output shows the read-allow rules for the repository
CI/CD Configuration Files
Main CI Pipeline
The .github/workflows/ci.yml file defines the primary GitHub Actions workflow. This YAML configuration runs tests, linting, and security checks on every push and pull request.
To execute this workflow locally for testing purposes:
# Install act (https://github.com/nektos/act) and then:
act -P ubuntu-latest=ghcr.io/catthehacker/ubuntu:act-latest
Upstream Monitoring
The .github/workflows/upstream-watch.yml file contains a specialized CI job that monitors upstream repositories for changes. This configuration flags missing updates automatically, ensuring the ai-job-search project stays synchronized with its dependencies.
Contribution Templates
The repository uses structured templates to standardize contributions:
.github/PULL_REQUEST_TEMPLATE.mdprovides the markdown template for PR descriptions.github/ISSUE_TEMPLATE/config.ymlorganizes issue categories for bug reports and feature requests using YAML definitions
Claude Framework Configuration
Command Specifications
The .claude/commands/ directory contains markdown files that serve as declarative command specifications for the Claude thin-pointer framework. Files such as setup.md and reset.md configure how interactive setup, system reset, and job ranking behaviors execute.
Job Scraper Skill Configuration
Located at .claude/skills/job-scraper/SKILL.md, this markdown file describes the job-scraper skill configuration, including which portals to query and geographic filters to apply during search operations.
TypeScript and Build Configuration
Compiler Settings for JobDanmark Skill
The .agents/skills/jobdanmark-search/cli/tsconfig.json file contains the TypeScript compiler configuration specific to the JobDanmark-search skill. This JSON configuration controls target ECMAScript versions, module resolution, and strict type-checking options.
To customize the TypeScript build:
# Edit the tsconfig.json (e.g., change target ES version)
npx tsc -p .agents/skills/jobdanmark-search/cli/tsconfig.json
Documentation and Policy Files
Setup and Security Guides
SETUP.md functions as both human-readable documentation and a configuration reference, containing command-line flags that can be re-run to re-configure parts of the system. SECURITY.md defines security-related policies, including secret handling procedures and references to the .env ignore rule.
Project Governance
While not runtime configurations, CONTRIBUTING.md, CHANGELOG.md, and LICENSE guide contributor workflows and describe version history. These files are tracked in the repository and help maintain project standards.
Summary
- The ai-job-search repository uses a minimal, explicit configuration strategy with files tracked directly in version control
.gitignoreprevents sensitive environment files from being committed, whileopencode.jsonmanages sandbox permissions- GitHub Actions workflows in
.github/workflows/automate testing and upstream monitoring - Claude framework specs in
.claude/commands/and.claude/skills/define interactive behaviors using markdown - TypeScript configuration at
.agents/skills/jobdanmark-search/cli/tsconfig.jsoncontrols build parameters for specific skills
Frequently Asked Questions
What is the main configuration file for permissions in ai-job-search?
The opencode.json file at the repository root controls permissions for the Instagit sandbox environment. It defines read, write, and execute policies using JSON structure, as implemented in MadsLorentzen/ai-job-search.
How are GitHub Actions workflows configured in this repository?
Workflows are defined in YAML files within the .github/workflows/ directory. The ci.yml file handles testing and linting, while upstream-watch.yml monitors external dependencies for changes.
Where are the Claude framework commands defined?
Commands are specified as markdown files in the .claude/commands/ directory, including setup.md and reset.md. These files use declarative syntax to configure interactive behaviors for the thin-pointer framework.
Are environment variables stored in configuration files?
No environment variables are committed to the repository. The .gitignore file explicitly excludes .env files, and SECURITY.md references this rule to ensure secrets remain outside version control.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →