Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/MadsLorentzen/ai-job-search
/ functions
Functions
323 in github.com/MadsLorentzen/ai-job-search
⨍
Functions
323
◇
Types & classes
65
↳
Endpoints
6
↓ 26 callers
Function
run_guards
(root: Path)
tests/test_security_guards.py:16
↓ 18 callers
Function
allowed
(text, agent, path)
tools/robots_check.py:99
↓ 18 callers
Function
match_score
Compute a match score between 0 and 100 for ranking results.
salary_lookup.py:253
↓ 17 callers
Function
parse_sheet
Parse a single worksheet into a list of company entries and detected categories.
tools/convert_salary_excel.py:111
↓ 14 callers
Function
search_company
Search for a company by name. Returns matching entries sorted by relevance.
salary_lookup.py:263
↓ 13 callers
Function
section
Body of one markdown section, up to the next heading of any depth.
tests/test_tracker_status_vocab.py:49
↓ 10 callers
Function
_entry
(company, city="")
tests/test_salary_lookup.py:158
↓ 10 callers
Function
_make_data
(*entries)
tests/test_salary_lookup.py:154
↓ 10 callers
Method
assert_invalid_data
(self, data, expected_message)
tests/test_salary_lookup.py:177
↓ 8 callers
Function
git
(root: Path, *args: str)
tests/test_upstream_triage.py:15
↓ 7 callers
Function
_sections
Split a command spec into {heading: body} by '##' headers. Splitting this way lets a fork's extra sections (e.g. this fork's '## Blocker logg
tests/test_rank_command.py:25
↓ 7 callers
Method
run_triage
(self, *args)
tests/test_upstream_triage.py:57
↓ 7 callers
Method
write_settings_with_hooks
(self, hooks)
tests/test_security_guards.py:118
↓ 6 callers
Method
commit
(self, msg: str)
tests/test_upstream_triage.py:49
↓ 6 callers
Function
detect_column_type
Detect whether a column header refers to count or index data.
tools/convert_salary_excel.py:102
↓ 6 callers
Function
is_robots_body
Does this actually look like a robots.txt? A misconfigured host can answer /robots.txt with 200 and an HTML error page. That body parses to z
tools/robots_check.py:47
↓ 6 callers
Method
set_upstream_to_head
(self)
tests/test_upstream_triage.py:54
↓ 6 callers
Function
verify_pdf
(pdf_path, expected_pages=None, min_chars=1, required_text=())
tools/verify_pdf.py:46
↓ 6 callers
Method
write
(self, rel: str, text: str)
tests/test_upstream_triage.py:44
↓ 6 callers
Method
write_gitignore
(self, rules)
tests/test_security_guards.py:53
↓ 6 callers
Method
write_manifest
(self, data, path=None)
tests/test_security_guards.py:56
↓ 5 callers
Function
_sections
Split a skill spec into {heading: body} by '##' headers. Splitting this way lets a fork's extra sections sit between the ones under test with
tests/test_upskill_skill.py:24
↓ 5 callers
Function
format_entry
Format a single company entry for display.
salary_lookup.py:292
↓ 5 callers
Function
git
(*args: str)
tools/upstream_triage.py:39
↓ 5 callers
Method
run_checker
(self, *args)
tests/test_check_upstream_updates.py:63
↓ 5 callers
Function
run_linter
(root: Path)
tests/test_lint_skills.py:14
↓ 4 callers
Method
add_remote
(self, name: str, url: str)
tests/test_check_upstream_updates.py:52
↓ 4 callers
Function
anglicize
Convert Danish/Nordic characters to anglicized equivalents.
salary_lookup.py:173
↓ 4 callers
Function
collect_validation_issues
Return (errors, warnings) for the salary data shape. errors -> hard problems that make lookups crash or emit wrong output (thes
salary_lookup.py:54
↓ 4 callers
Function
extract_core_words
Extract meaningful words from a company name, ignoring noise.
salary_lookup.py:181
↓ 4 callers
Method
materialize_remote_ref
(self, name: str)
tests/test_check_upstream_updates.py:55
↓ 4 callers
Function
normalize
Normalize string for robust fuzzy matching.
salary_lookup.py:164
↓ 4 callers
Function
section
The body of one markdown section, up to the next heading of any depth.
tests/test_apply_records_application.py:42
↓ 4 callers
Method
write_settings
(self, allow)
tests/test_security_guards.py:50
↓ 4 callers
Method
write_settings
(self, data)
tests/test_lint_skills.py:54
↓ 3 callers
Method
_run_validate
(self, payload)
tests/test_salary_lookup.py:288
↓ 3 callers
Function
header_matches
Return True when a header contains a meaningful pattern match. Patterns match whole tokens; any pattern also listed in ``COMPOUND_PATTERNS``
tools/convert_salary_excel.py:76
↓ 3 callers
Function
parse_page_count
(pdfinfo_output)
tools/verify_pdf.py:35
↓ 3 callers
Function
run_tool
(command)
tools/verify_pdf.py:15
↓ 3 callers
Method
setUp
(self)
tests/test_check_upstream_updates.py:89
↓ 3 callers
Function
validate_data
Validate the salary data shape before lookups use it. Preserves historical behavior: exits(1) on the first hard error with the same user-faci
salary_lookup.py:128
↓ 2 callers
Method
_local_refs
(self)
tests/test_readme_assets.py:18
↓ 2 callers
Function
fail_data_error
Exit with a user-facing salary data setup error.
salary_lookup.py:46
↓ 2 callers
Function
match_score_optimized
Compute a match score between 0 and 100 using precalculated query values.
salary_lookup.py:190
↓ 2 callers
Function
read_raw_data
Load and JSON-parse salary_data.json; exit with a helpful message if missing/invalid.
salary_lookup.py:140
↓ 2 callers
Function
rel
(path: Path)
tools/lint_skills.py:31
↓ 2 callers
Function
run_git
(args: list[str])
tools/check_framework_version.py:25
↓ 2 callers
Function
run_git
(args: list[str])
tools/check_upstream_updates.py:39
↓ 1 callers
Function
_fetch
curl, not urllib: some hosts (jobup.ch) hang urllib indefinitely while answering curl in under a second, and --max-time is a hard ceiling.
tools/robots_check.py:30
↓ 1 callers
Function
_groups
user-agent -> [(is_allow, pattern)], tolerating blank lines inside a record.
tools/robots_check.py:66
↓ 1 callers
Function
_hook_commands
Yield "<Event>:<command>" for every command a hook event would run. Fails closed: any shape this does not recognise yields a marker that cannot
tools/security_guards.py:119
↓ 1 callers
Function
_match
RFC 9309 wildcard match; returns match length or -1. The pattern is percent-decoded to match the already-decoded path. Without this, "Disallo
tools/robots_check.py:86
↓ 1 callers
Function
_print_crossref
(ref: str)
tools/upstream_triage.py:218
↓ 1 callers
Function
build_parser
()
tools/verify_pdf.py:71
↓ 1 callers
Function
check_command
(path: Path)
tools/lint_skills.py:73
↓ 1 callers
Function
check_gitignore
()
tools/security_guards.py:195
↓ 1 callers
Function
check_package_manifests
()
tools/security_guards.py:222
↓ 1 callers
Function
check_permissions
()
tools/security_guards.py:143
↓ 1 callers
Function
check_settings
()
tools/lint_skills.py:80
↓ 1 callers
Function
check_skill
(path: Path)
tools/lint_skills.py:35
↓ 1 callers
Function
commit_cell
(short: str, sha: str, slug: str | None)
tools/upstream_triage.py:107
↓ 1 callers
Function
files_touched
(sha: str)
tools/upstream_triage.py:66
↓ 1 callers
Function
gate
(url)
tools/robots_check.py:109
↓ 1 callers
Function
get_base_commit
()
tools/check_framework_version.py:29
↓ 1 callers
Function
get_framework_version_from_text
(text: str)
tools/check_upstream_updates.py:47
↓ 1 callers
Function
get_remote_url
(remote_name: str)
tools/check_upstream_updates.py:43
↓ 1 callers
Function
has_non_trivial_changes
(file_path: Path, base_commit: str)
tools/check_framework_version.py:73
↓ 1 callers
Method
iter_rows
(self, min_row=1, max_row=None, values_only=False)
tests/test_convert_salary_excel.py:18
↓ 1 callers
Function
load_data
Load, parse, and validate salary_data.json for lookups.
salary_lookup.py:159
↓ 1 callers
Function
load_wontport
SHA prefixes the fork has decided never to port; missing file -> [].
tools/upstream_triage.py:92
↓ 1 callers
Function
main
()
salary_lookup.py:377
↓ 1 callers
Function
main
()
tools/check_framework_version.py:110
↓ 1 callers
Function
main
(argv=None)
tools/verify_pdf.py:92
↓ 1 callers
Function
main
()
tools/upstream_triage.py:113
↓ 1 callers
Function
main
()
tools/check_upstream_updates.py:67
↓ 1 callers
Function
main
()
tools/lint_skills.py:98
↓ 1 callers
Function
main
()
tools/security_guards.py:255
↓ 1 callers
Function
main
()
tools/convert_salary_excel.py:263
↓ 1 callers
Function
normalize_text
(text)
tools/verify_pdf.py:42
↓ 1 callers
Function
parse_frontmatter
(path: Path)
tools/check_framework_version.py:55
↓ 1 callers
Function
parse_numeric_cell
Parse numeric Excel values, including localized string cells.
tools/convert_salary_excel.py:57
↓ 1 callers
Function
parse_semver
(version_str: str)
tools/check_upstream_updates.py:60
↓ 1 callers
Function
patch_id
Stable patch-id for a commit, or None if it has no diff.
tools/upstream_triage.py:50
↓ 1 callers
Function
path_exists
(path: str)
tools/upstream_triage.py:71
↓ 1 callers
Function
print_validation_report
Print an actionable validation report. Returns the process exit code.
salary_lookup.py:355
↓ 1 callers
Function
remote_slug
owner/repo for a GitHub remote, or None if it can't be parsed.
tools/upstream_triage.py:79
↓ 1 callers
Function
rev_list
(range_spec: str)
tools/upstream_triage.py:45
↓ 1 callers
Function
strip_type_patterns
Remove count/index words from a header to derive a category name.
tools/convert_salary_excel.py:94
↓ 1 callers
Function
subject
(sha: str)
tools/upstream_triage.py:62
Method
__getitem__
(self, row_number)
tests/test_convert_salary_excel.py:26
Method
__init__
(self, rows)
tests/test_convert_salary_excel.py:15
Method
setUp
(self)
tests/test_verify_pdf.py:20
Method
setUp
(self)
tests/test_apply_records_application.py:54
Method
setUp
(self)
tests/test_upstream_triage.py:26
Method
setUp
(self)
tests/test_check_upstream_updates.py:33
Method
setUp
(self)
tests/test_check_upstream_updates.py:73
Method
setUp
(self)
tests/test_check_upstream_updates.py:120
Method
setUp
(self)
tests/test_check_upstream_updates.py:140
Method
setUp
(self)
tests/test_security_guards.py:32
Method
setUp
(self)
tests/test_salary_lookup.py:367
next →
1–100 of 323, ranked by callers