Jobindex Search Skill
Search live Danish job listings from Jobindex.dk. No authentication needed.
Covers thousands of job postings across all sectors, updated in real time.
When to use this skill
Invoke this skill when the user wants to:
- Search for job openings in Denmark by keyword, job title, or technology
- Find jobs in a specific Danish city (use keyword with city name, e.g.
python aarhus)
- Filter jobs by recency (posted today, last 7 days, last 30 days)
- Get the full description of a specific job listing
- Explore the Danish job market for a given profession or skill set
Commands
Search job listings
bun run .agents/skills/jobindex-search/cli/src/cli.ts search [flags]
Key flags:
--query <text> / -q <text> — keyword search (job title, skill, company, city). Required for meaningful results.
--jobage <days> — filter by posting age: 1 (today), 7, 14, 30, or 9999 (all, default)
--sort <order> — score (relevance, default) or date (newest first)
--page <n> — page number (1-indexed, 20 results per page, fixed)
--limit <n> — cap total results the CLI outputs (client-side)
--format json|table|plain
Area note: The Jobindex API does not support area filtering via params. To find jobs in a specific city, include the city in --query (e.g. --query "data engineer københavn" or --query "python aarhus").
Fetch full job detail
bun run .agents/skills/jobindex-search/cli/src/cli.ts detail <id> [--format json|plain]
id is the job ID from search results (e.g. h1647303). You may also pass the full Jobindex URL. Returns the full job description, deadline, employment type, hours, and apply link.
How to use effectively
Always start with search. Pass the job title, skill, or profession as --query. Combine with a city name in the query to narrow by location (e.g. --query "frontend developer odense").
Use --jobage 7 or --jobage 1 for fresh listings. Without it, results include all historical postings.
Use --sort date to see the most recently posted jobs first. Default score sorts by relevance.
Natural workflow: search → detail.
- Use
search to find matching jobs and their id values.
- Call
detail <id> to get the full description, deadline, and apply link.
Use --format table for quick scanning, --format json for data processing, and --format plain for reading a single job's full details.
Pagination: The API always returns 20 results per page. Use --page to navigate pages. Use --limit to cap results across one page fetch.
Usage examples
Find Python jobs posted in the last 7 days
bun run .agents/skills/jobindex-search/cli/src/cli.ts search \
--query python \
--jobage 7 \
--sort date \
--format table
Data engineer jobs in Copenhagen
bun run .agents/skills/jobindex-search/cli/src/cli.ts search \
--query "data engineer københavn" \
--sort score \
--format table
Graphic designer jobs — all time, by relevance
bun run .agents/skills/jobindex-search/cli/src/cli.ts search \
--query "grafisk designer" \
--limit 10 \
--format table
Full-stack developer jobs, page 2
bun run .agents/skills/jobindex-search/cli/src/cli.ts search \
--query "full stack developer" \
--page 2 \
--format json
Jobs posted today across all sectors
bun run .agents/skills/jobindex-search/cli/src/cli.ts search \
--jobage 1 \
--sort date \
--limit 20 \
--format table
Get full details for a specific job
bun run .agents/skills/jobindex-search/cli/src/cli.ts detail h1647303 --format plain
Marketing jobs in Aarhus
bun run .agents/skills/jobindex-search/cli/src/cli.ts search \
--query "marketing aarhus" \
--jobage 30 \
--sort date \
--format table
Output formats
| Format |
Best for |
json |
Default — programmatic use, data processing, passing IDs to detail |
table |
Quick human-readable overview and scanning |
plain |
Reading a single job's full detail (detail command) |
All errors are written to stderr as { "error": "...", "code": "..." } and the process exits with code 1.
Notes
- All data is from the public
jobindex.dk API — no credentials required.
- Page size is fixed at 20 results per page (Jobindex API limitation).
- Area/region filtering via API params does not work — include city names in
--query instead.
--jobage 9999 is the default and includes all postings regardless of age.
- Total count in
meta.total uses Danish dot-thousands notation internally (e.g. 18.903) — the CLI normalizes this to a plain integer.
- Job IDs are string-prefixed (e.g.
h1647303) — pass them as-is to detail.
1---2name: jobindex-search3description: Make sure to use this skill whenever the user wants to search for jobs in Denmark, find Danish job listings, look up a specific job posting, or asks anything about the Danish job market — even if they don't mention jobindex.dk explicitly. Invoke this skill for questions about open positions, job vacancies, hiring in Denmark, job opportunities in Danish cities or sectors, or when the user wants to find work in Denmark. Also trigger for phrases like "find me a job", "are there any jobs for X in Copenhagen", or "what jobs are available in Aarhus" when the context is Denmark. Trigger phrases include: jobindex, jobsøgning, job i Danmark, ledige stillinger, job opslag, find job, stillingopslag, jobannonce, job vacancy denmark, danish jobs, jobs in denmark, job search denmark, work in denmark, find work denmark, IT jobs denmark, engineer jobs denmark, developer jobs copenhagen, marketing jobs aarhus, jobs aarhus, jobs copenhagen, jobs odense, jobs aalborg, job openings denmark, hiring denmark, job listings denmark, 4---5
6# Jobindex Search Skill
7
8Search live Danish job listings from Jobindex.dk. No authentication needed.
9Covers thousands of job postings across all sectors, updated in real time.
10
11## When to use this skill
12
13Invoke this skill when the user wants to:
14
15- Search for job openings in Denmark by keyword, job title, or technology
16- Find jobs in a specific Danish city (use keyword with city name, e.g. `python aarhus`)
17- Filter jobs by recency (posted today, last 7 days, last 30 days)
18- Get the full description of a specific job listing
19- Explore the Danish job market for a given profession or skill set
20
21## Commands
22
23### Search job listings
24
25```bash
26bun run .agents/skills/jobindex-search/cli/src/cli.ts search [flags]
27```
28
29Key flags:
30- `--query <text>` / `-q <text>` — keyword search (job title, skill, company, city). **Required** for meaningful results.
31- `--jobage <days>` — filter by posting age: `1` (today), `7`, `14`, `30`, or `9999` (all, default)
32- `--sort <order>` — `score` (relevance, default) or `date` (newest first)
33- `--page <n>` — page number (1-indexed, 20 results per page, fixed)
34- `--limit <n>` — cap total results the CLI outputs (client-side)
35- `--format json|table|plain`
36
37> **Area note**: The Jobindex API does not support area filtering via params. To find jobs in a specific city, include the city in `--query` (e.g. `--query "data engineer københavn"` or `--query "python aarhus"`).
38
39### Fetch full job detail
40
41```bash
42bun run .agents/skills/jobindex-search/cli/src/cli.ts detail <id> [--format json|plain]
43```
44
45`id` is the job ID from `search` results (e.g. `h1647303`). You may also pass the full Jobindex URL. Returns the full job description, deadline, employment type, hours, and apply link.
46
47---
48
49## How to use effectively
50
51**Always start with `search`.** Pass the job title, skill, or profession as `--query`. Combine with a city name in the query to narrow by location (e.g. `--query "frontend developer odense"`).
52
53**Use `--jobage 7` or `--jobage 1` for fresh listings.** Without it, results include all historical postings.
54
55**Use `--sort date` to see the most recently posted jobs first.** Default `score` sorts by relevance.
56
57**Natural workflow: `search` → `detail`.**
581. Use `search` to find matching jobs and their `id` values.
592. Call `detail <id>` to get the full description, deadline, and apply link.
60
61**Use `--format table` for quick scanning**, `--format json` for data processing, and `--format plain` for reading a single job's full details.
62
63**Pagination**: The API always returns 20 results per page. Use `--page` to navigate pages. Use `--limit` to cap results across one page fetch.
64
65---
66
67## Usage examples
68
69### Find Python jobs posted in the last 7 days
70
71```bash
72bun run .agents/skills/jobindex-search/cli/src/cli.ts search \
73 --query python \
74 --jobage 7 \
75 --sort date \
76 --format table
77```
78
79### Data engineer jobs in Copenhagen
80
81```bash
82bun run .agents/skills/jobindex-search/cli/src/cli.ts search \
83 --query "data engineer københavn" \
84 --sort score \
85 --format table
86```
87
88### Graphic designer jobs — all time, by relevance
89
90```bash
91bun run .agents/skills/jobindex-search/cli/src/cli.ts search \
92 --query "grafisk designer" \
93 --limit 10 \
94 --format table
95```
96
97### Full-stack developer jobs, page 2
98
99```bash
100bun run .agents/skills/jobindex-search/cli/src/cli.ts search \
101 --query "full stack developer" \
102 --page 2 \
103 --format json
104```
105
106### Jobs posted today across all sectors
107
108```bash
109bun run .agents/skills/jobindex-search/cli/src/cli.ts search \
110 --jobage 1 \
111 --sort date \
112 --limit 20 \
113 --format table
114```
115
116### Get full details for a specific job
117
118```bash
119bun run .agents/skills/jobindex-search/cli/src/cli.ts detail h1647303 --format plain
120```
121
122### Marketing jobs in Aarhus
123
124```bash
125bun run .agents/skills/jobindex-search/cli/src/cli.ts search \
126 --query "marketing aarhus" \
127 --jobage 30 \
128 --sort date \
129 --format table
130```
131
132---
133
134## Output formats
135
136| Format | Best for |
137|--------|----------|
138| `json` | Default — programmatic use, data processing, passing IDs to `detail` |
139| `table` | Quick human-readable overview and scanning |
140| `plain` | Reading a single job's full detail (`detail` command) |
141
142All errors are written to **stderr** as `{ "error": "...", "code": "..." }` and the process exits with code `1`.
143
144---
145
146## Notes
147
148- All data is from the public `jobindex.dk` API — no credentials required.
149- Page size is fixed at 20 results per page (Jobindex API limitation).
150- Area/region filtering via API params does not work — include city names in `--query` instead.
151- `--jobage 9999` is the default and includes all postings regardless of age.
152- Total count in `meta.total` uses Danish dot-thousands notation internally (e.g. `18.903`) — the CLI normalizes this to a plain integer.
153- Job IDs are string-prefixed (e.g. `h1647303`) — pass them as-is to `detail`.