A Pi package that turns Pi into a Danish job-search agent for jobindex.dk — Denmark's largest job board. It finds jobs matching your criteria and surfaces the best matches with apply links and short ad excerpts.
The agent works through skills backed by native Pi tools that talk to Jobindex's internal JSON API. Free-text filters (location, category, job title, company) are resolved to Jobindex IDs automatically, so you can search in plain language.
| Skill | What it does |
|---|---|
/skill:search |
Search Jobindex by keyword, location, category, job title, company, employment type, remote option, and recency; narrow results; summarise the best matches with apply links. |
/skill:details |
Fetch fresh metadata (apply link, deadline, company, rating) for a single Jobindex job by its tid, and point to the full ad. |
Jobindex does not publish a documented public API, but its web app talks to an
internal JSON endpoint at https://www.jobindex.dk/api/jobsearch/v3/. The
bundled extension calls that same endpoint (no API key required) and returns
clean, structured results. No headless browser, no HTML scraping of the
rendered page.
- Pi (
npm install -g @earendil-works/pi-coding-agent) - Node.js 18+ (bundled with Pi's installer)
Install it into Pi from git:
pi install git:github.com/mrn-dk/pi-job-agentUse -l to install it only for the current project instead of globally. Once
installed, start pi and the jobindex_* tools and /skill:* skills are
available in any session.
git clone https://github.com/mrn-dk/pi-job-agent
cd pi-job-agent
pi install -l . # register this repo as a project-local Pi packageThen run pi in the project directory (trust it when prompted). There are no
npm dependencies to install — the extension uses only Node's built-in fetch.
Invoke a skill with /skill:<name>, optionally followed by instructions. You
can also just describe what you want in plain language — Pi loads the right
skill and tools on its own.
/skill:search find Python developer jobs in Copenhagen posted in the last 7 days
A typical session:
- Search —
/skill:searchfinds matching jobs and summarises the best ones with apply links and short excerpts:/skill:search remote frontend jobs in Aarhus, permanent, posted within 30 days - Details —
/skill:detailsfetches current metadata for a specific job from a search result'stid:/skill:details h1679031
You can also just ask in plain language:
Find me nurse jobs in Region Hovedstaden and list the top 5 with apply links.
All integrations are native Pi tools (no CLI to run):
| Tool | Purpose |
|---|---|
jobindex_search |
Search Jobindex ads by keyword/location/category/company/type/remote/recency |
jobindex_resolve |
Resolve a free-text location/category/jobtitle/company to precise Jobindex IDs |
jobindex_get_job |
Fetch one job's metadata (apply link, deadline, company, rating) by tid |
See skills/TOOLS.md for parameters and details.
- Jobindex caps pagination at page 50. For broad searches, narrow with
location/category/posted_withinrather than paginating deeply. jobindex_get_jobreturns metadata only; the full ad body comes back throughjobindex_search(withinclude_description). Use the job'sshare_urlto open the full ad in a browser.- Jobindex is a Danish site — prefer Danish keywords where they help (e.g. "sygeplejerske" for nurse), but English works for tech roles since ad text is often bilingual.