willhaben
Create and manage listings on Willhaben.at (Austrian marketplace). Use when the user wants to sell something, create a listing, or mentions Willhaben. Handles photo uploads, generates titles/descriptions/prices, and posts via browser automation.
Best use case
willhaben is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Create and manage listings on Willhaben.at (Austrian marketplace). Use when the user wants to sell something, create a listing, or mentions Willhaben. Handles photo uploads, generates titles/descriptions/prices, and posts via browser automation.
Teams using willhaben should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/willhaben/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How willhaben Compares
| Feature / Agent | willhaben | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Create and manage listings on Willhaben.at (Austrian marketplace). Use when the user wants to sell something, create a listing, or mentions Willhaben. Handles photo uploads, generates titles/descriptions/prices, and posts via browser automation.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
AI Agent for YouTube Script Writing
Find AI agent skills for YouTube script writing, video research, content outlining, and repeatable channel production workflows.
AI Agent for Product Research
Browse AI agent skills for product research, competitive analysis, customer discovery, and structured product decision support.
AI Agent for SaaS Idea Validation
Use AI agent skills for SaaS idea validation, market research, customer discovery, competitor analysis, and documenting startup hypotheses.
SKILL.md Source
# Willhaben Listing Creator
Create listings on Willhaben.at via browser automation.
## First-Time Setup
Check if `config/user-preferences.json` exists in the skill folder.
- If missing → run setup flow (see `references/SETUP.md`)
- If exists → read preferences and apply to all listings
User preferences include: location, shipping, description style, pricing strategy, disclaimers.
## Workflow
### 1. Receive Item Details
- User sends photos (via WhatsApp/chat)
- Optional: user provides details (condition, category, price range)
### 2. Market Research
Before suggesting a price, search Willhaben for similar/identical items:
- Search willhaben.at for the item
- Note price range of comparable listings
- Check sold prices if available
- Report findings to user:
- **Neupreis** (new price)
- **Marktpreis** (what similar items are listed for)
- **Empfohlener Preis** (recommended selling price)
### 3. Generate Listing
- Analyze photos to understand the item
- Generate:
- **Title**: Concise, searchable (German)
- **Description**: SHORT and casual - real people don't write essays. 2-3 sentences max. Mention key facts only.
- **Price**: Based on market research, suggest realistic price
- **Package size**: Estimate weight category for shipping (3kg / 10kg / 31.5kg)
- Ask user:
- Location (Bezirk) - if not in preferences
- Any damage/issues to mention
- If they want a more detailed description (default: no)
- Present draft for confirmation **including package size estimate**
### Listing Summary Template
Show the user something like:
```
📝 Listing Draft
Title: [title]
Description: [description]
Price: €XX VB
Location: [location]
Pickup: ✅ / Shipping: ✅
📦 Package: ~Xkg (selecting [size] package)
→ If wrong, let me know!
Photos: X attached
Ready to post?
```
If package weight is unclear (e.g., unusual item), **ask the user** rather than guessing wrong.
### 4. Post to Willhaben
See detailed browser automation steps below.
## Description Style
**Default: Casual & short**
```
Blue Yeti USB Mikrofon, schwarz. Funktioniert einwandfrei, inkl. Kabel und Standfuß. Privatverkauf, keine Garantie/Rücknahme.
```
**NOT like this (too AI/formal):**
```
Zum Verkauf steht ein hochwertiges Blue Yeti USB Kondensatormikrofon in der eleganten Blackout Edition. Dieses professionelle Mikrofon eignet sich perfekt für Podcasting, Streaming, Gaming oder Home-Office...
```
Only add detail if user explicitly asks for it.
## Language
All listings in **German** (Austrian market). Keep it natural, like a real person wrote it.
---
# Browser Automation Guide
Use `clawd` browser profile with saved Willhaben login.
## Step 1: Start Listing
1. Navigate to: `https://www.willhaben.at/iad/anzeigenaufgabe`
2. Click **"Kostenlose Anzeige aufgeben"** (link to Marktplatz free listing)
## Step 2: Fill Details Page
The form has these fields:
### Images
- **Upload method**: Use browser `upload` action with `inputRef` pointing to the "Bild auswählen" button
- Example: `browser upload inputRef=e12 paths=[...]` where e12 is the button ref
- Can upload multiple images at once via paths array
- After upload, verify images appear as thumbnails before proceeding
### Price (Verkaufspreis)
- Textbox, just enter the number (no € symbol needed)
### Title (Titel)
- Textbox with placeholder "z.B. Levi's 501 Jeans, schwarz, Größe 32"
- Keep concise and searchable
### Category (Kategorie)
- **Auto-suggests based on title** - a radio option appears
- **IMPORTANT**: Must click the category option to select it (even if it looks selected)
- If wrong category suggested, click "Andere Kategorie wählen"
### Condition (Zustand)
- Appears AFTER category is selected
- Options: Neu / Neuwertig / Gebraucht / Defekt
- Usually select "Gebraucht" for used items
### Description (Beschreibung)
- Rich text editor (contenteditable paragraph)
- Click on the paragraph area first, then type
- Keep it short!
### Contact & Location
- Pre-filled from account settings
- Shows name, email, address
## Step 3: Click "Weiter"
Proceeds to shipping options.
## Step 4: Shipping Page (Übergabe & Versand)
### Delivery Options
- **Selbstabholung**: Pickup (usually keep checked)
- **Versand**: Shipping (check if offering shipping)
### PayLivery (willhaben's shipping service)
If Versand is checked:
**Package Size (Versandgröße)** - Choose based on actual item weight!
- **Paket bis 3 kg** - Small items
- **Paket bis 10 kg** - Medium items (electronics, small appliances)
- **Paket bis 31,5 kg** - Heavy items (appliances with compressors, etc.)
Example weights:
- Ice cream maker with compressor: ~9kg → select 10kg
- Keyboard/mouse: ~1kg → select 3kg
- Monitor: ~5kg → select 10kg
- Books/games: ~0.5kg → select 3kg
- Laptop: ~2-3kg → select 3kg
- Kitchen appliance (mixer, blender): ~3-5kg → select 10kg
**⚠️ If weight is unclear**: This should have been confirmed with user in the listing summary step. If you reach this point unsure, go back and ask!
**Carrier**: Post or DPD (Post is default, fine for most)
**Sperrgut**: Check if item is oversized (>100×60×60cm) or non-rectangular
Buyer pays shipping (shown at bottom).
## Step 5: Click "Weiter"
Proceeds to upsells page.
## Step 6: Upsells Page (Zusatzprodukte)
Shows paid promotion options:
- Anzeige vorreihen (€14.99)
- Farblich hervorheben (€7.99)
- TOP Anzeige options (€21.99 - €89.99)
**Skip all** - just click **"Veröffentlichen"** to publish for free.
Shows "Gewählt: € 0" at bottom confirming no paid options.
## Step 7: Success!
Confirmation page shows:
- ✅ "Anzeige erfolgreich aufgegeben"
- Listing preview with image
- **willhaben-Code**: The listing ID (e.g., 1832624977)
- Note: "Die Veröffentlichung kann bis zu 24h dauern" (review period)
**Listing URL**: `https://www.willhaben.at/iad/object?adId={willhaben-code}`
---
# Troubleshooting
### Category not selecting
Even if the category appears, you must click on the radio/option area to actually select it. The validation error "Kategorie muss gewählt werden" means it wasn't clicked.
### Images not uploading
Use `inputRef` with the "Bild auswählen" button reference (e.g., `inputRef=e12`). Do NOT use `selector: input[type="file"]` - it doesn't work reliably on this site.
### Element refs going stale
Always take a fresh snapshot before interacting. Refs change after page updates.
### Login required
If not logged in, the profile should have saved credentials. If needed, navigate to login page or ask user to log in manually in the browser.
---
# Quick Reference
| Step | URL/Action |
|------|------------|
| Start | `https://www.willhaben.at/iad/anzeigenaufgabe` |
| Free listing | Click "Kostenlose Anzeige aufgeben" |
| Upload images | `upload` with `inputRef` pointing to "Bild auswählen" button |
| Next | "Weiter" button |
| Publish | "Veröffentlichen" button |
| View listing | `https://www.willhaben.at/iad/object?adId={ID}` |Related Skills
---
name: article-factory-wechat
humanizer
Remove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's comprehensive "Signs of AI writing" guide. Detects and fixes patterns including: inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, negative parallelisms, and excessive conjunctive phrases.
find-skills
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
tavily-search
Use Tavily API for real-time web search and content extraction. Use when: user needs real-time web search results, research, or current information from the web. Requires Tavily API key.
baidu-search
Search the web using Baidu AI Search Engine (BDSE). Use for live information, documentation, or research topics.
agent-autonomy-kit
Stop waiting for prompts. Keep working.
Meeting Prep
Never walk into a meeting unprepared again. Your agent researches all attendees before calendar events—pulling LinkedIn profiles, recent company news, mutual connections, and conversation starters. Generates a briefing doc with talking points, icebreakers, and context so you show up informed and confident. Triggered automatically before meetings or on-demand. Configure research depth, advance timing, and output format. Walking into meetings blind is amateur hour—missed connections, generic small talk, zero leverage. Use when setting up meeting intelligence, researching specific attendees, generating pre-meeting briefs, or automating your prep workflow.
self-improvement
Captures learnings, errors, and corrections to enable continuous improvement. Use when: (1) A command or operation fails unexpectedly, (2) User corrects Claude ('No, that's wrong...', 'Actually...'), (3) User requests a capability that doesn't exist, (4) An external API or tool fails, (5) Claude realizes its knowledge is outdated or incorrect, (6) A better approach is discovered for a recurring task. Also review learnings before major tasks.
botlearn-healthcheck
botlearn-healthcheck — BotLearn autonomous health inspector for OpenClaw instances across 5 domains (hardware, config, security, skills, autonomy); triggers on system check, health report, diagnostics, or scheduled heartbeat inspection.
linkedin-cli
A bird-like LinkedIn CLI for searching profiles, checking messages, and summarizing your feed using session cookies.
notebooklm
Google NotebookLM 非官方 Python API 的 OpenClaw Skill。支持内容生成(播客、视频、幻灯片、测验、思维导图等)、文档管理和研究自动化。当用户需要使用 NotebookLM 生成音频概述、视频、学习材料或管理知识库时触发。
小红书长图文发布 Skill
## 概述