{"id":"f8fdd958-5869-4d24-bec6-3cb6cb70e638","entityType":"agent","slug":"clawhub-ilyazar-kleinanzeigen-helper","name":"Kleinanzeigen helper","canonicalUrl":"https://www.xpersona.co/agent/clawhub-ilyazar-kleinanzeigen-helper","canonicalPath":"/agent/clawhub-ilyazar-kleinanzeigen-helper","generatedAt":"2026-10-10T21:55:12.108Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-10T16:21:19.237Z","emptyReason":null},"description":"Manage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime. Skill: Kleinanzeigen helper Owner: ilyazar Summary: Manage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime. Tags: latest:1.0.7 Version history: v1.0.7 | 2026-07-12T15:53:40.809Z | user surface scoped confirmation safeguards v1.0.6 | 2026-07-12T15:46:56.381Z | user sync scoped listing and browser safety guidance v1.0.5 | 2026-06-13T08:20:21.896Z | user exclude local todo note","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.3K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s175h68ade1ba5yxn4khdrdzt985zbqd:kleinanzeigen-helper","sourceUrl":"https://clawhub.ai/ilyazar/kleinanzeigen-helper","homepage":"https://clawhub.ai/ilyazar/skills/kleinanzeigen-helper","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/ilyazar/kleinanzeigen-helper","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/ilyazar/skills/kleinanzeigen-helper","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":63,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Manage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime. Skill: Kleinanzeigen helper Owner: ilyazar Summary: Manage Kl"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-10T16:21:19.237Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T16:21:19.237Z","emptyReason":null},"stars":null,"forks":null,"downloads":1341,"packageName":null,"latestVersion":"1.0.7","tractionLabel":"1.3K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T16:21:19.237Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T16:21:19.237Z","lastCrawledAt":"2026-10-10T16:21:19.237Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T16:21:19.237Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.7","createdAt":"2026-07-12T15:53:40.809Z","changelog":"surface scoped confirmation safeguards","fileCount":12,"zipByteSize":9005},{"version":"1.0.6","createdAt":"2026-07-12T15:46:56.381Z","changelog":"sync scoped listing and browser safety guidance","fileCount":12,"zipByteSize":9003},{"version":"1.0.5","createdAt":"2026-06-13T08:20:21.896Z","changelog":"exclude local todo notes from the published skill artifact","fileCount":12,"zipByteSize":8694},{"version":"1.0.4","createdAt":"2026-06-13T08:17:51.406Z","changelog":"sync guidance with the embedded KleinClaw skill; document OpenClaw config lookup and packaged ad example; remove stale MIT-0 skill metadata","fileCount":13,"zipByteSize":8905},{"version":"0.1.3","createdAt":"2026-05-04T07:32:33.980Z","changelog":"- correct registry version to 0.1.3 - align latest with the github tag","fileCount":12,"zipByteSize":7368},{"version":"1.0.3","createdAt":"2026-05-04T07:20:37.695Z","changelog":"- Updated the KleinClaw plugin installation link to point to the latest clawhub.ai location. - Clarified descriptions in the installation steps for better readability. - No functional or workflow changes.","fileCount":12,"zipByteSize":8656},{"version":"1.0.2","createdAt":"2026-05-04T06:53:52.774Z","changelog":"- No code or documentation changes in this version. - Version bump only; no new features or fixes.","fileCount":11,"zipByteSize":7127},{"version":"1.0.1","createdAt":"2026-05-04T06:52:36.669Z","changelog":"- No user-facing changes besides display name—metadata and documentation remain the same in this release. - Version bump only; no file changes were detected.","fileCount":11,"zipByteSize":7127}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s175h68ade1ba5yxn4khdrdzt985zbqd:kleinanzeigen-helper","setupComplexity":"low","setupSteps":["Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ilyazar-kleinanzeigen-helper/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ilyazar-kleinanzeigen-helper/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ilyazar-kleinanzeigen-helper/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-ilyazar-kleinanzeigen-helper/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-ilyazar-kleinanzeigen-helper/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-ilyazar-kleinanzeigen-helper/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T21:55:12.105Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ilyazar-kleinanzeigen-helper/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ilyazar-kleinanzeigen-helper/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ilyazar-kleinanzeigen-helper/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-ilyazar-kleinanzeigen-helper/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-10T16:21:19.237Z","emptyReason":null},"readme":"Skill: Kleinanzeigen helper\n\nOwner: ilyazar\n\nSummary: Manage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime.\n\nTags: latest:1.0.7\n\nVersion history:\n\nv1.0.7 | 2026-07-12T15:53:40.809Z | user\n\nsurface scoped confirmation safeguards\n\nv1.0.6 | 2026-07-12T15:46:56.381Z | user\n\nsync scoped listing and browser safety guidance\n\nv1.0.5 | 2026-06-13T08:20:21.896Z | user\n\nexclude local todo notes from the published skill artifact\n\nv1.0.4 | 2026-06-13T08:17:51.406Z | user\n\nsync guidance with the embedded KleinClaw skill; document OpenClaw config lookup and packaged ad example; remove stale MIT-0 skill metadata\n\nv0.1.3 | 2026-05-04T07:32:33.980Z | user\n\n- correct registry version to 0.1.3\n- align latest with the github tag\n\nv1.0.3 | 2026-05-04T07:20:37.695Z | user\n\n- Updated the KleinClaw plugin installation link to point to the latest clawhub.ai location.\n- Clarified descriptions in the installation steps for better readability.\n- No functional or workflow changes.\n\nv1.0.2 | 2026-05-04T06:53:52.774Z | user\n\n- No code or documentation changes in this version.\n- Version bump only; no new features or fixes.\n\nv1.0.1 | 2026-05-04T06:52:36.669Z | user\n\n- No user-facing changes besides display name—metadata and documentation remain the same in this release.\n- Version bump only; no file changes were detected.\n\nv1.0.0 | 2026-05-04T06:50:24.758Z | user\n\nInitial release of kleinanzeigen-helper-skill\n\n- Provides tools for managing Kleinanzeigen listings using the required KleinClaw plugin and local kleinanzeigen-bot setup.\n- Guides users through preparing, verifying, publishing, updating, deleting, downloading, or extending listings.\n- Includes documentation links for installation, configuration, workflow, and troubleshooting.\n- Lists required plugins and prerequisites for smooth operation.\n\nArchive index:\n\nArchive v1.0.7: 12 files, 9005 bytes\n\nFiles: references/ad-authoring.md (1754b), references/browser-behaviour.md (936b), references/draft-publish-preflight.md (1015b), references/install.md (1043b), references/listing-discovery-scoping.md (776b), references/non-negotiables.md (754b), references/publish-result-caveats.md (743b), references/tool-selection.md (2323b), references/workflow.md (1343b), skill-card.md (2782b), SKILL.md (1510b), _meta.json (139b)\n\nFile v1.0.7:SKILL.md\n\n---\nname: kleinanzeigen-helper\ndescription: Manage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime.\n---\n\n# Kleinanzeigen Helper\n\nUse this skill to prepare or manage Kleinanzeigen listings through the\nconfigured KleinClaw plugin and embedded `miniclaw` runtime. Review and scope\ndeletion and other mutating operations to the intended listings, then require\nexplicit user confirmation before running them.\n\n## Load Details\n\n- Read [Prerequisites / Install](references/install.md) when the user asks how\n  to install, enable, configure, or troubleshoot missing KleinClaw tools.\n- Read [Non-negotiables](references/non-negotiables.md) before any\n  Kleinanzeigen operation.\n- Read [Workflow](references/workflow.md) before verifying, publishing,\n  updating, deleting, downloading, or extending listings.\n- Read [Ad Authoring](references/ad-authoring.md) before creating or editing\n  local ad drafts.\n- Read [Draft Publish Preflight](references/draft-publish-preflight.md) before\n  publishing a drafted ad.\n- Read [Listing Discovery and Scoping](references/listing-discovery-scoping.md)\n  before acting on a specific listing.\n- Read [Browser Behaviour](references/browser-behaviour.md) when diagnosing or\n  changing runtime browser settings.\n- Read [Publish Result Caveats](references/publish-result-caveats.md) when\n  interpreting publish/update results.\n- Read [Tool Selection](references/tool-selection.md) when choosing tool\n  parameters, selectors, or ad ID handling.\n\nFile v1.0.7:_meta.json\n\n{\n  \"ownerId\": \"kn7ce0cfexsze7wp9j99en7xyx85yh3n\",\n  \"slug\": \"kleinanzeigen-helper\",\n  \"version\": \"1.0.7\",\n  \"publishedAt\": 1783871620809\n}\n\nFile v1.0.7:references/ad-authoring.md\n\n## Ad Authoring\n\n- Use `kleinanzeigen_ad_schema` before creating or editing a local ad draft.\n  The plugin exposes the supported `ad.yaml` fields, required values, limits,\n  enum values, and a safe draft workflow.\n- For a concrete shape reference, use the packaged inactive example\n  `examples/sample-listing/ad.yaml`. Copy it into a configured `adRoots`\n  directory before editing; never publish the example unchanged.\n- Treat KleinClaw as the source of truth for the miniclaw ad schema. User chat,\n  image filenames, and image observations provide field values; the schema\n  shape must come from `kleinanzeigen_ad_schema` and\n  `kleinanzeigen_draft_ad`.\n- Use `kleinanzeigen_images_list` for candidate image filenames and runtime\n  support checks. This tool lists files, relative globs, sizes, and basic\n  dimensions when available; it does not inspect image pixels or describe what\n  is visible.\n- If the user wants an ad based on images, use only user-provided chat context,\n  file names, existing non-secret ad examples, and any image-viewing capability\n  already available to the agent. Do not claim image details came from\n  KleinClaw unless a KleinClaw tool actually returned them.\n- Use `kleinanzeigen_read_ad` for one existing ad config under configured\n  `adRoots` when examples are useful. Contact fields are redacted by default.\n- Use `kleinanzeigen_draft_ad` only after explicit user confirmation. It creates\n  or replaces a miniclaw-shaped `ad.yaml` or `ad.yml` under configured\n  `adRoots`; it does not publish. Prefer `active: false` for first drafts.\n- After drafting, run scoped `kleinanzeigen_verify` against the new relative ad\n  handle. Ask the user to review the sanitized draft summary before making it\n  active or publishing it.\n\nFile v1.0.7:references/browser-behaviour.md\n\n## Browser Behaviour\n\n- Use `kleinanzeigen_browser_status` when diagnosing login, browser launch,\n  profile, private/incognito mode, or runtime/browser mismatch issues.\n- Report only sanitized effective browser settings, such as browser, binary\n  location, private-window mode, and redacted profile configured-state markers.\n- If publishing fails during login-state detection or browser interaction, check\n  whether `usePrivateWindow` is enabled. Private/incognito windows may interfere\n  with expected login or profile persistence.\n- Use `kleinanzeigen_browser_check` to test proposed browser settings without\n  changing the real miniclaw config.\n- Only change browser configuration with `kleinanzeigen_browser_configure` after\n  explicit user confirmation. Persist only supported browser choices and\n  workspace or system-default profile modes; custom executables and custom\n  profile directories must be edited locally outside chat.\n\nFile v1.0.7:references/draft-publish-preflight.md\n\n## Draft Publish Preflight\n\n- When the user asks to publish a drafted ad, do not call\n  `kleinanzeigen_publish` immediately.\n- First run `kleinanzeigen_read_ad` for the exact `adDirectory` or `adPath`\n  handle. Check the sanitized summary and confirm that the intended ad, title,\n  category, image globs, and `active` state match the user's request.\n- If `active` is not `true`, tell the user that publishing requires activation,\n  then use `kleinanzeigen_set_ad_active` with `active: true` only when the\n  user's publish request or follow-up confirmation clearly authorizes that\n  activation.\n- Run scoped `kleinanzeigen_verify` after activation and before publishing.\n- Publish only with `kleinanzeigen_publish` scoped to the same exact\n  `adDirectories` or `adConfigPaths` used for the preflight. Never switch to a\n  broad selector during this flow.\n- If scoped publish returns `outcome.status: \"preflight_failed\"` for\n  `active`, do not retry publish immediately. Activate, verify, then retry\n  scoped publish.\n\nFile v1.0.7:references/install.md\n\n## Prerequisites / Install\n\n- Install [KleinClaw](https://clawhub.ai/plugins/kleinclaw), then enable it:\n\n  ```bash\n  openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart\n  ```\n\n- Configure KleinClaw under `plugins.entries.kleinclaw.config` with\n  `configPath` or `workingDirectory` in the active OpenClaw config. Use\n  `openclaw config file` to print that file path. `configPath` points at the\n  local miniclaw `config.yaml`; `workingDirectory` makes miniclaw read\n  `config.yaml` from that directory.\n- The plugin bundles the `miniclaw` runtime and this helper skill, so no\n  separate executable path is required. The standalone\n  [`kleinanzeigen-helper`](https://clawhub.ai/ilyazar/kleinanzeigen-helper)\n  skill from\n  [`ilyaZar/kleinanzeigen-helper`](https://github.com/ilyaZar/kleinanzeigen-helper)\n  is optional guidance only; the callable tools still come from the KleinClaw\n  plugin.\n- Keep Kleinanzeigen credentials, browser profiles, cookies, and full config\n  files out of chat.\n\nFile v1.0.7:references/listing-discovery-scoping.md\n\n## Listing Discovery and Scoping\n\n- When `adRoots` are configured and the user asks for a specific listing, run\n  `kleinanzeigen_list_ads` before publishing, updating, deleting, downloading,\n  or extending. Use its returned `adDirectory` or `adPath` handle with the\n  title, ID, and active state to scope the next tool call.\n- Prefer scoped operations with `adDirectories` or `adConfigPaths` after\n  discovery. Avoid broad selectors like `all` unless the user explicitly wants a\n  broad operation.\n- For a single listing request such as \"publish the sample listing\", first list\n  with a query, then verify or publish only the matching relative handle.\n- `kleinanzeigen_delete` still requires explicit `adIds`, even when the\n  operation is also scoped to a relative ad handle.\n\nFile v1.0.7:references/non-negotiables.md\n\n## Non-negotiables\n\n- Use only the Kleinanzeigen plugin tools for operations.\n- Do not use `exec`, browser automation, direct HTTP requests, or shell commands\n  for Kleinanzeigen work.\n- Do not ask for, read, print, summarize, store, inspect, or infer Kleinanzeigen\n  usernames, passwords, SMS or 2FA codes, cookies, browser profiles, session\n  data, or credential-bearing config files.\n- Do not ask the user to paste `config.yaml`, browser settings, cookies, logs,\n  or credential-like snippets.\n- Keep `adRoots` narrow. Do not broaden `adRoots` or change `approvalMode` for\n  convenience.\n- KleinClaw tool approval depends on local OpenClaw configuration. Mutating\n  tools always require explicit user confirmation through their `confirm`\n  parameter.\n\nFile v1.0.7:references/publish-result-caveats.md\n\n## Publish Result Caveats\n\n- Check the structured `outcome` first. Success evidence can include `DONE:`\n  counts, published or updated IDs, selected ad config changes observed after\n  miniclaw exits, or another explicit success signal returned by KleinClaw.\n- If the structured result is empty, times out, reports a noisy process exit, or\n  stops after browser interaction, do not assume failure automatically.\n- If the result is unclear, tell the user what happened and suggest checking the\n  listing on Kleinanzeigen or rerunning a scoped list, verify, or download when\n  appropriate.\n- Treat `Approval timed out` as an OpenClaw/tool approval timing issue, not as a\n  Kleinanzeigen runtime failure. Retry only after the user confirms again.\n\nFile v1.0.7:references/tool-selection.md\n\n## Tool Selection\n\n- `kleinanzeigen_status`: check runtime availability, config wiring, workspace\n  mode, version, and supported commands without reading the config contents.\n- `kleinanzeigen_list_ads`: discover configured local ad folders and return\n  titles, IDs, active state, and relative handles for scoped operations.\n- `kleinanzeigen_ad_schema`: inspect the safe ad config schema and draft\n  workflow exposed by KleinClaw.\n- `kleinanzeigen_read_ad`: read one existing ad config under configured\n  `adRoots`, with contact fields redacted by default.\n- `kleinanzeigen_images_list`: list image files under one configured ad\n  directory and return relative globs usable in an ad draft.\n- `kleinanzeigen_browser_status`: inspect sanitized effective browser settings\n  and detected local browsers.\n- `kleinanzeigen_browser_check`: test current or proposed browser settings\n  through miniclaw diagnostics without changing the real config.\n- `kleinanzeigen_browser_configure`: change miniclaw browser settings only after\n  explicit confirmation. Browser settings affect which local browser profile the\n  live runtime can open.\n- `kleinanzeigen_draft_ad`: create or replace a local ad draft under configured\n  `adRoots` only after explicit confirmation.\n- `kleinanzeigen_set_ad_active`: set the top-level `active` flag for one YAML\n  ad config before scoped verify/publish.\n- `kleinanzeigen_verify`: validate the full configured miniclaw workspace or\n  selected relative ad handles.\n- `kleinanzeigen_publish`: publish or republish due, new, changed, all, combined\n  selectors, or explicitly selected ads. This can create or replace live\n  Kleinanzeigen listings.\n- `kleinanzeigen_update`: update changed, all, or explicitly selected live ads.\n- `kleinanzeigen_delete`: delete only explicitly selected live Kleinanzeigen ad\n  IDs. Deleted listings may not be reversible from the plugin.\n- `kleinanzeigen_download`: download new, all, or explicitly selected live ads\n  into the local workspace.\n- `kleinanzeigen_extend`: extend all eligible live ads or explicitly selected\n  IDs.\n\nDo not mix explicit ad IDs with selectors. For publish combinations, use\n`selectors`, for example `[\"changed\", \"due\"]`.\n\nIf a tool is unavailable, tell the user that KleinClaw must be installed and\nenabled in OpenClaw before that action can run.\n\nFile v1.0.7:references/workflow.md\n\n## Workflow\n\n1. Clarify the listing intent and selector using only non-secret details:\n   listing title, category, price, description text, image readiness, and\n   whether the target is all ads, new ads, changed ads, due ads, or specific ad\n   IDs.\n2. Run `kleinanzeigen_status` first when checking installation, plugin config,\n   runtime availability, or supported miniclaw commands.\n3. Run `kleinanzeigen_verify` before any account-changing operation when\n   practical.\n4. For publish, update, delete, download, or extend, summarize the exact\n   non-secret action, scope, and live listing impact, then wait for explicit\n   user confirmation.\n5. If the Kleinanzeigen plugin tools are unavailable, stop and tell the user the\n   `kleinclaw` OpenClaw plugin is required.\n6. Call the matching optional plugin tool only after confirmation:\n   `kleinanzeigen_publish`, `kleinanzeigen_update`, `kleinanzeigen_delete`,\n   `kleinanzeigen_download`, or `kleinanzeigen_extend`.\n7. Report only the sanitized result returned by the tool. If the result has\n   `needsUserAction`, tell the user to handle the account step outside chat in\n   a terminal/browser, then retry `kleinanzeigen_status` or\n   `kleinanzeigen_verify`. If the result says configuration or credentials need\n   attention, ask the user to fix that outside the chat and rerun verification.\n\nFile v1.0.7:skill-card.md\n\n## Description:\n\nManage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[ilyazar](https://clawhub.ai/user/ilyazar)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal users and developers use this skill to draft, verify, publish, update, download, extend, or delete Kleinanzeigen listings through configured KleinClaw tools while keeping account-changing actions scoped and confirmed.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill depends on an external KleinClaw plugin that can control configured listing workspaces and live Kleinanzeigen listing actions.\n\nMitigation: Install and enable KleinClaw only from a trusted source, keep adRoots narrow, and verify the plugin before use.\n\nRisk: Publishing, updating, extending, downloading, or deleting listings can change live Kleinanzeigen account state.\n\nMitigation: Review the exact listing scope and require explicit user confirmation before any mutating action.\n\nRisk: Credentials, browser profiles, cookies, and configuration files may contain sensitive account data.\n\nMitigation: Keep credentials and config files out of chat and report only sanitized browser, configuration, and tool results.\n\n## Reference(s):\n\n- [Kleinanzeigen Helper Skill](https://clawhub.ai/ilyazar/skills/kleinanzeigen-helper)\n- [KleinClaw Plugin](https://clawhub.ai/plugins/kleinclaw)\n- [Prerequisites / Install](artifact/references/install.md)\n- [Non-negotiables](artifact/references/non-negotiables.md)\n- [Workflow](artifact/references/workflow.md)\n- [Ad Authoring](artifact/references/ad-authoring.md)\n- [Draft Publish Preflight](artifact/references/draft-publish-preflight.md)\n- [Listing Discovery and Scoping](artifact/references/listing-discovery-scoping.md)\n- [Browser Behaviour](artifact/references/browser-behaviour.md)\n- [Publish Result Caveats](artifact/references/publish-result-caveats.md)\n- [Tool Selection](artifact/references/tool-selection.md)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Shell commands, Configuration, Guidance]\n\n**Output Format:** [Markdown guidance with inline shell commands and structured tool-selection instructions]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Reports sanitized results only and requires explicit user confirmation before mutating live Kleinanzeigen listings.]\n\n## Skill Version(s):\n\n1.0.7 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v1.0.6: 12 files, 9003 bytes\n\nFiles: references/ad-authoring.md (1754b), references/browser-behaviour.md (936b), references/draft-publish-preflight.md (1015b), references/install.md (1043b), references/listing-discovery-scoping.md (776b), references/non-negotiables.md (754b), references/publish-result-caveats.md (743b), references/tool-selection.md (2323b), references/workflow.md (1343b), skill-card.md (2894b), SKILL.md (1451b), _meta.json (139b)\n\nFile v1.0.6:SKILL.md\n\n---\nname: kleinanzeigen-helper\ndescription: Manage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime.\n---\n\n# Kleinanzeigen Helper\n\nUse this skill when the user wants help preparing, verifying, publishing,\nupdating, deleting, downloading, or extending Kleinanzeigen listings through\nthe configured KleinClaw plugin and embedded `miniclaw` runtime.\n\n## Load Details\n\n- Read [Prerequisites / Install](references/install.md) when the user asks how\n  to install, enable, configure, or troubleshoot missing KleinClaw tools.\n- Read [Non-negotiables](references/non-negotiables.md) before any\n  Kleinanzeigen operation.\n- Read [Workflow](references/workflow.md) before verifying, publishing,\n  updating, deleting, downloading, or extending listings.\n- Read [Ad Authoring](references/ad-authoring.md) before creating or editing\n  local ad drafts.\n- Read [Draft Publish Preflight](references/draft-publish-preflight.md) before\n  publishing a drafted ad.\n- Read [Listing Discovery and Scoping](references/listing-discovery-scoping.md)\n  before acting on a specific listing.\n- Read [Browser Behaviour](references/browser-behaviour.md) when diagnosing or\n  changing runtime browser settings.\n- Read [Publish Result Caveats](references/publish-result-caveats.md) when\n  interpreting publish/update results.\n- Read [Tool Selection](references/tool-selection.md) when choosing tool\n  parameters, selectors, or ad ID handling.\n\nFile v1.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn7ce0cfexsze7wp9j99en7xyx85yh3n\",\n  \"slug\": \"kleinanzeigen-helper\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1783871216381\n}\n\nFile v1.0.6:references/ad-authoring.md\n\n## Ad Authoring\n\n- Use `kleinanzeigen_ad_schema` before creating or editing a local ad draft.\n  The plugin exposes the supported `ad.yaml` fields, required values, limits,\n  enum values, and a safe draft workflow.\n- For a concrete shape reference, use the packaged inactive example\n  `examples/sample-listing/ad.yaml`. Copy it into a configured `adRoots`\n  directory before editing; never publish the example unchanged.\n- Treat KleinClaw as the source of truth for the miniclaw ad schema. User chat,\n  image filenames, and image observations provide field values; the schema\n  shape must come from `kleinanzeigen_ad_schema` and\n  `kleinanzeigen_draft_ad`.\n- Use `kleinanzeigen_images_list` for candidate image filenames and runtime\n  support checks. This tool lists files, relative globs, sizes, and basic\n  dimensions when available; it does not inspect image pixels or describe what\n  is visible.\n- If the user wants an ad based on images, use only user-provided chat context,\n  file names, existing non-secret ad examples, and any image-viewing capability\n  already available to the agent. Do not claim image details came from\n  KleinClaw unless a KleinClaw tool actually returned them.\n- Use `kleinanzeigen_read_ad` for one existing ad config under configured\n  `adRoots` when examples are useful. Contact fields are redacted by default.\n- Use `kleinanzeigen_draft_ad` only after explicit user confirmation. It creates\n  or replaces a miniclaw-shaped `ad.yaml` or `ad.yml` under configured\n  `adRoots`; it does not publish. Prefer `active: false` for first drafts.\n- After drafting, run scoped `kleinanzeigen_verify` against the new relative ad\n  handle. Ask the user to review the sanitized draft summary before making it\n  active or publishing it.\n\nFile v1.0.6:references/browser-behaviour.md\n\n## Browser Behaviour\n\n- Use `kleinanzeigen_browser_status` when diagnosing login, browser launch,\n  profile, private/incognito mode, or runtime/browser mismatch issues.\n- Report only sanitized effective browser settings, such as browser, binary\n  location, private-window mode, and redacted profile configured-state markers.\n- If publishing fails during login-state detection or browser interaction, check\n  whether `usePrivateWindow` is enabled. Private/incognito windows may interfere\n  with expected login or profile persistence.\n- Use `kleinanzeigen_browser_check` to test proposed browser settings without\n  changing the real miniclaw config.\n- Only change browser configuration with `kleinanzeigen_browser_configure` after\n  explicit user confirmation. Persist only supported browser choices and\n  workspace or system-default profile modes; custom executables and custom\n  profile directories must be edited locally outside chat.\n\nFile v1.0.6:references/draft-publish-preflight.md\n\n## Draft Publish Preflight\n\n- When the user asks to publish a drafted ad, do not call\n  `kleinanzeigen_publish` immediately.\n- First run `kleinanzeigen_read_ad` for the exact `adDirectory` or `adPath`\n  handle. Check the sanitized summary and confirm that the intended ad, title,\n  category, image globs, and `active` state match the user's request.\n- If `active` is not `true`, tell the user that publishing requires activation,\n  then use `kleinanzeigen_set_ad_active` with `active: true` only when the\n  user's publish request or follow-up confirmation clearly authorizes that\n  activation.\n- Run scoped `kleinanzeigen_verify` after activation and before publishing.\n- Publish only with `kleinanzeigen_publish` scoped to the same exact\n  `adDirectories` or `adConfigPaths` used for the preflight. Never switch to a\n  broad selector during this flow.\n- If scoped publish returns `outcome.status: \"preflight_failed\"` for\n  `active`, do not retry publish immediately. Activate, verify, then retry\n  scoped publish.\n\nFile v1.0.6:references/install.md\n\n## Prerequisites / Install\n\n- Install [KleinClaw](https://clawhub.ai/plugins/kleinclaw), then enable it:\n\n  ```bash\n  openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart\n  ```\n\n- Configure KleinClaw under `plugins.entries.kleinclaw.config` with\n  `configPath` or `workingDirectory` in the active OpenClaw config. Use\n  `openclaw config file` to print that file path. `configPath` points at the\n  local miniclaw `config.yaml`; `workingDirectory` makes miniclaw read\n  `config.yaml` from that directory.\n- The plugin bundles the `miniclaw` runtime and this helper skill, so no\n  separate executable path is required. The standalone\n  [`kleinanzeigen-helper`](https://clawhub.ai/ilyazar/kleinanzeigen-helper)\n  skill from\n  [`ilyaZar/kleinanzeigen-helper`](https://github.com/ilyaZar/kleinanzeigen-helper)\n  is optional guidance only; the callable tools still come from the KleinClaw\n  plugin.\n- Keep Kleinanzeigen credentials, browser profiles, cookies, and full config\n  files out of chat.\n\nFile v1.0.6:references/listing-discovery-scoping.md\n\n## Listing Discovery and Scoping\n\n- When `adRoots` are configured and the user asks for a specific listing, run\n  `kleinanzeigen_list_ads` before publishing, updating, deleting, downloading,\n  or extending. Use its returned `adDirectory` or `adPath` handle with the\n  title, ID, and active state to scope the next tool call.\n- Prefer scoped operations with `adDirectories` or `adConfigPaths` after\n  discovery. Avoid broad selectors like `all` unless the user explicitly wants a\n  broad operation.\n- For a single listing request such as \"publish the sample listing\", first list\n  with a query, then verify or publish only the matching relative handle.\n- `kleinanzeigen_delete` still requires explicit `adIds`, even when the\n  operation is also scoped to a relative ad handle.\n\nFile v1.0.6:references/non-negotiables.md\n\n## Non-negotiables\n\n- Use only the Kleinanzeigen plugin tools for operations.\n- Do not use `exec`, browser automation, direct HTTP requests, or shell commands\n  for Kleinanzeigen work.\n- Do not ask for, read, print, summarize, store, inspect, or infer Kleinanzeigen\n  usernames, passwords, SMS or 2FA codes, cookies, browser profiles, session\n  data, or credential-bearing config files.\n- Do not ask the user to paste `config.yaml`, browser settings, cookies, logs,\n  or credential-like snippets.\n- Keep `adRoots` narrow. Do not broaden `adRoots` or change `approvalMode` for\n  convenience.\n- KleinClaw tool approval depends on local OpenClaw configuration. Mutating\n  tools always require explicit user confirmation through their `confirm`\n  parameter.\n\nFile v1.0.6:references/publish-result-caveats.md\n\n## Publish Result Caveats\n\n- Check the structured `outcome` first. Success evidence can include `DONE:`\n  counts, published or updated IDs, selected ad config changes observed after\n  miniclaw exits, or another explicit success signal returned by KleinClaw.\n- If the structured result is empty, times out, reports a noisy process exit, or\n  stops after browser interaction, do not assume failure automatically.\n- If the result is unclear, tell the user what happened and suggest checking the\n  listing on Kleinanzeigen or rerunning a scoped list, verify, or download when\n  appropriate.\n- Treat `Approval timed out` as an OpenClaw/tool approval timing issue, not as a\n  Kleinanzeigen runtime failure. Retry only after the user confirms again.\n\nFile v1.0.6:references/tool-selection.md\n\n## Tool Selection\n\n- `kleinanzeigen_status`: check runtime availability, config wiring, workspace\n  mode, version, and supported commands without reading the config contents.\n- `kleinanzeigen_list_ads`: discover configured local ad folders and return\n  titles, IDs, active state, and relative handles for scoped operations.\n- `kleinanzeigen_ad_schema`: inspect the safe ad config schema and draft\n  workflow exposed by KleinClaw.\n- `kleinanzeigen_read_ad`: read one existing ad config under configured\n  `adRoots`, with contact fields redacted by default.\n- `kleinanzeigen_images_list`: list image files under one configured ad\n  directory and return relative globs usable in an ad draft.\n- `kleinanzeigen_browser_status`: inspect sanitized effective browser settings\n  and detected local browsers.\n- `kleinanzeigen_browser_check`: test current or proposed browser settings\n  through miniclaw diagnostics without changing the real config.\n- `kleinanzeigen_browser_configure`: change miniclaw browser settings only after\n  explicit confirmation. Browser settings affect which local browser profile the\n  live runtime can open.\n- `kleinanzeigen_draft_ad`: create or replace a local ad draft under configured\n  `adRoots` only after explicit confirmation.\n- `kleinanzeigen_set_ad_active`: set the top-level `active` flag for one YAML\n  ad config before scoped verify/publish.\n- `kleinanzeigen_verify`: validate the full configured miniclaw workspace or\n  selected relative ad handles.\n- `kleinanzeigen_publish`: publish or republish due, new, changed, all, combined\n  selectors, or explicitly selected ads. This can create or replace live\n  Kleinanzeigen listings.\n- `kleinanzeigen_update`: update changed, all, or explicitly selected live ads.\n- `kleinanzeigen_delete`: delete only explicitly selected live Kleinanzeigen ad\n  IDs. Deleted listings may not be reversible from the plugin.\n- `kleinanzeigen_download`: download new, all, or explicitly selected live ads\n  into the local workspace.\n- `kleinanzeigen_extend`: extend all eligible live ads or explicitly selected\n  IDs.\n\nDo not mix explicit ad IDs with selectors. For publish combinations, use\n`selectors`, for example `[\"changed\", \"due\"]`.\n\nIf a tool is unavailable, tell the user that KleinClaw must be installed and\nenabled in OpenClaw before that action can run.\n\nFile v1.0.6:references/workflow.md\n\n## Workflow\n\n1. Clarify the listing intent and selector using only non-secret details:\n   listing title, category, price, description text, image readiness, and\n   whether the target is all ads, new ads, changed ads, due ads, or specific ad\n   IDs.\n2. Run `kleinanzeigen_status` first when checking installation, plugin config,\n   runtime availability, or supported miniclaw commands.\n3. Run `kleinanzeigen_verify` before any account-changing operation when\n   practical.\n4. For publish, update, delete, download, or extend, summarize the exact\n   non-secret action, scope, and live listing impact, then wait for explicit\n   user confirmation.\n5. If the Kleinanzeigen plugin tools are unavailable, stop and tell the user the\n   `kleinclaw` OpenClaw plugin is required.\n6. Call the matching optional plugin tool only after confirmation:\n   `kleinanzeigen_publish`, `kleinanzeigen_update`, `kleinanzeigen_delete`,\n   `kleinanzeigen_download`, or `kleinanzeigen_extend`.\n7. Report only the sanitized result returned by the tool. If the result has\n   `needsUserAction`, tell the user to handle the account step outside chat in\n   a terminal/browser, then retry `kleinanzeigen_status` or\n   `kleinanzeigen_verify`. If the result says configuration or credentials need\n   attention, ask the user to fix that outside the chat and rerun verification.\n\nFile v1.0.6:skill-card.md\n\n## Description: <br>\nManage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[ilyazar](https://clawhub.ai/user/ilyazar) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users and developers use this skill to prepare, verify, publish, update, delete, download, or extend Kleinanzeigen listings through KleinClaw while keeping listing scope and account-changing actions explicit. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can guide an agent through live Kleinanzeigen listing changes, including publish, update, delete, download, extend, draft, and browser configuration actions. <br>\nMitigation: Review the exact listing scope and live account impact before confirming any mutating action. <br>\nRisk: Credential-bearing material such as account credentials, cookies, browser profiles, session data, and full config files could be exposed in chat. <br>\nMitigation: Keep secrets and full configuration files out of chat; use only sanitized tool outputs and local configuration changes. <br>\nRisk: Broad selectors or unclear listing handles could affect more listings than intended. <br>\nMitigation: Discover listings first, use scoped ad directories or config paths, and avoid broad selectors unless the user explicitly requests them. <br>\nRisk: Deleting live Kleinanzeigen listings may not be reversible from the plugin. <br>\nMitigation: Require explicit listing IDs and confirmation before deletion. <br>\n\n\n## Reference(s): <br>\n- [Kleinanzeigen helper ClawHub page](https://clawhub.ai/ilyazar/skills/kleinanzeigen-helper) <br>\n- [KleinClaw plugin](https://clawhub.ai/plugins/kleinclaw) <br>\n- [Prerequisites / Install](references/install.md) <br>\n- [Non-negotiables](references/non-negotiables.md) <br>\n- [Workflow](references/workflow.md) <br>\n- [Draft Publish Preflight](references/draft-publish-preflight.md) <br>\n- [Listing Discovery and Scoping](references/listing-discovery-scoping.md) <br>\n- [Tool Selection](references/tool-selection.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Guidance, Markdown, Shell commands, Configuration] <br>\n**Output Format:** [Markdown guidance with inline shell commands and tool names] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Directs the agent to use KleinClaw tools for live listing operations and to report sanitized results.] <br>\n\n## Skill Version(s): <br>\n1.0.6 (source: server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v1.0.5: 12 files, 8694 bytes\n\nFiles: references/ad-authoring.md (1760b), references/browser-behaviour.md (751b), references/draft-publish-preflight.md (1010b), references/install.md (1043b), references/listing-discovery-scoping.md (762b), references/non-negotiables.md (753b), references/publish-result-caveats.md (743b), references/tool-selection.md (2047b), references/workflow.md (1306b), skill-card.md (2614b), SKILL.md (1451b), _meta.json (139b)\n\nFile v1.0.5:SKILL.md\n\n---\nname: kleinanzeigen-helper\ndescription: Manage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime.\n---\n\n# Kleinanzeigen Helper\n\nUse this skill when the user wants help preparing, verifying, publishing,\nupdating, deleting, downloading, or extending Kleinanzeigen listings through\nthe configured KleinClaw plugin and embedded `miniclaw` runtime.\n\n## Load Details\n\n- Read [Prerequisites / Install](references/install.md) when the user asks how\n  to install, enable, configure, or troubleshoot missing KleinClaw tools.\n- Read [Non-negotiables](references/non-negotiables.md) before any\n  Kleinanzeigen operation.\n- Read [Workflow](references/workflow.md) before verifying, publishing,\n  updating, deleting, downloading, or extending listings.\n- Read [Ad Authoring](references/ad-authoring.md) before creating or editing\n  local ad drafts.\n- Read [Draft Publish Preflight](references/draft-publish-preflight.md) before\n  publishing a drafted ad.\n- Read [Listing Discovery and Scoping](references/listing-discovery-scoping.md)\n  before acting on a specific listing.\n- Read [Browser Behaviour](references/browser-behaviour.md) when diagnosing or\n  changing runtime browser settings.\n- Read [Publish Result Caveats](references/publish-result-caveats.md) when\n  interpreting publish/update results.\n- Read [Tool Selection](references/tool-selection.md) when choosing tool\n  parameters, selectors, or ad ID handling.\n\nFile v1.0.5:_meta.json\n\n{\n  \"ownerId\": \"kn7ce0cfexsze7wp9j99en7xyx85yh3n\",\n  \"slug\": \"kleinanzeigen-helper\",\n  \"version\": \"1.0.5\",\n  \"publishedAt\": 1781338821896\n}\n\nFile v1.0.5:references/ad-authoring.md\n\n## Ad Authoring\n\n- Use `kleinanzeigen_ad_schema` before creating or editing a local ad draft.\n  The plugin exposes the supported `ad.yaml` fields, required values, limits,\n  enum values, and a safe draft workflow.\n- For a concrete shape reference, use the packaged inactive example\n  `examples/sample-listing/ad.yaml`. Copy it into a configured `adRoots`\n  directory before editing; never publish the example unchanged.\n- Treat KleinClaw as the source of truth for the miniclaw ad schema. User chat,\n  image filenames, and image observations provide field values; the schema\n  shape must come from `kleinanzeigen_ad_schema` and\n  `kleinanzeigen_draft_ad`.\n- Use `kleinanzeigen_images_list` for candidate image filenames and runtime\n  support checks. This tool lists files, relative globs, sizes, and basic\n  dimensions when available; it does not inspect image pixels or describe what\n  is visible.\n- If the user wants an ad based on images, use only user-provided chat context,\n  file names, existing non-secret ad examples, and any image-viewing capability\n  already available to the agent. Do not claim image details came from\n  KleinClaw unless a KleinClaw tool actually returned them.\n- Use `kleinanzeigen_read_ad` for one existing ad config under configured\n  `adRoots` when examples are useful. Contact fields are redacted by default.\n- Use `kleinanzeigen_draft_ad` only after explicit user confirmation. It creates\n  or replaces a miniclaw-shaped `ad.yaml` or `ad.yml` under configured\n  `adRoots`; it does not publish. Prefer `active: false` for first drafts.\n- After drafting, run scoped `kleinanzeigen_verify` against the new directory or\n  config path. Ask the user to review the sanitized draft summary before making\n  it active or publishing it.\n\nFile v1.0.5:references/browser-behaviour.md\n\n## Browser Behaviour\n\n- Use `kleinanzeigen_browser_status` when diagnosing login, browser launch,\n  profile, private/incognito mode, or runtime/browser mismatch issues.\n- Report only sanitized effective browser settings, such as browser, binary\n  location, private-window mode, user data directory, and profile name.\n- If publishing fails during login-state detection or browser interaction, check\n  whether `usePrivateWindow` is enabled. Private/incognito windows may interfere\n  with expected login or profile persistence.\n- Use `kleinanzeigen_browser_check` to test proposed browser settings without\n  changing the real miniclaw config.\n- Only change browser configuration with `kleinanzeigen_browser_configure` after\n  explicit user confirmation.\n\nFile v1.0.5:references/draft-publish-preflight.md\n\n## Draft Publish Preflight\n\n- When the user asks to publish a drafted ad, do not call\n  `kleinanzeigen_publish` immediately.\n- First run `kleinanzeigen_read_ad` for the exact ad directory or config path.\n  Check the sanitized summary and confirm that the intended ad, title, category,\n  image globs, and `active` state match the user's request.\n- If `active` is not `true`, tell the user that publishing requires activation,\n  then use `kleinanzeigen_set_ad_active` with `active: true` only when the\n  user's publish request or follow-up confirmation clearly authorizes that\n  activation.\n- Run scoped `kleinanzeigen_verify` after activation and before publishing.\n- Publish only with `kleinanzeigen_publish` scoped to the same exact\n  `adDirectories` or `adConfigPaths` used for the preflight. Never switch to a\n  broad selector during this flow.\n- If scoped publish returns `outcome.status: \"preflight_failed\"` for\n  `active`, do not retry publish immediately. Activate, verify, then retry\n  scoped publish.\n\nFile v1.0.5:references/install.md\n\n## Prerequisites / Install\n\n- Install [KleinClaw](https://clawhub.ai/plugins/kleinclaw), then enable it:\n\n  ```bash\n  openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart\n  ```\n\n- Configure KleinClaw under `plugins.entries.kleinclaw.config` with\n  `configPath` or `workingDirectory` in the active OpenClaw config. Use\n  `openclaw config file` to print that file path. `configPath` points at the\n  local miniclaw `config.yaml`; `workingDirectory` makes miniclaw read\n  `config.yaml` from that directory.\n- The plugin bundles the `miniclaw` runtime and this helper skill, so no\n  separate executable path is required. The standalone\n  [`kleinanzeigen-helper`](https://clawhub.ai/ilyazar/kleinanzeigen-helper)\n  skill from\n  [`ilyaZar/kleinanzeigen-helper`](https://github.com/ilyaZar/kleinanzeigen-helper)\n  is optional guidance only; the callable tools still come from the KleinClaw\n  plugin.\n- Keep Kleinanzeigen credentials, browser profiles, cookies, and full config\n  files out of chat.\n\nFile v1.0.5:references/listing-discovery-scoping.md\n\n## Listing Discovery and Scoping\n\n- When `adRoots` are configured and the user asks for a specific listing, run\n  `kleinanzeigen_list_ads` before publishing, updating, deleting, downloading,\n  or extending. Use it to resolve the exact local ad directory, config path,\n  title, ID, and active state.\n- Prefer scoped operations with `adDirectories` or `adConfigPaths` after\n  discovery. Avoid broad selectors like `all` unless the user explicitly wants a\n  broad operation.\n- For a single listing request such as \"publish the sample listing\", first list\n  with a query, then verify or publish only the matching directory/config path.\n- `kleinanzeigen_delete` still requires explicit `adIds`, even when the\n  operation is also scoped to a directory or config path.\n\nFile v1.0.5:references/non-negotiables.md\n\n## Non-negotiables\n\n- Use only the Kleinanzeigen plugin tools for operations.\n- Do not use `exec`, browser automation, direct HTTP requests, or shell commands\n  for Kleinanzeigen work.\n- Do not ask for, read, print, summarize, store, inspect, or infer Kleinanzeigen\n  usernames, passwords, SMS or 2FA codes, cookies, browser profiles, session\n  data, or credential-bearing config files.\n- Do not ask the user to paste `config.yaml`, browser settings, cookies, logs,\n  or credential-like snippets.\n- Keep `adRoots` narrow. Do not broaden `adRoots` or lower `approvalMode` for\n  convenience.\n- KleinClaw tool approval depends on local OpenClaw configuration. Mutating\n  tools always require explicit user confirmation through their `confirm`\n  parameter.\n\nFile v1.0.5:references/publish-result-caveats.md\n\n## Publish Result Caveats\n\n- Check the structured `outcome` first. Success evidence can include `DONE:`\n  counts, published or updated IDs, selected ad config changes observed after\n  miniclaw exits, or another explicit success signal returned by KleinClaw.\n- If the structured result is empty, times out, reports a noisy process exit, or\n  stops after browser interaction, do not assume failure automatically.\n- If the result is unclear, tell the user what happened and suggest checking the\n  listing on Kleinanzeigen or rerunning a scoped list, verify, or download when\n  appropriate.\n- Treat `Approval timed out` as an OpenClaw/tool approval timing issue, not as a\n  Kleinanzeigen runtime failure. Retry only after the user confirms again.\n\nFile v1.0.5:references/tool-selection.md\n\n## Tool Selection\n\n- `kleinanzeigen_status`: check runtime availability, config wiring, workspace\n  mode, version, and supported commands without reading the config contents.\n- `kleinanzeigen_list_ads`: discover configured local ad folders and resolve\n  titles, IDs, active state, config paths, and directories before scoped\n  operations.\n- `kleinanzeigen_ad_schema`: inspect the safe ad config schema and draft\n  workflow exposed by KleinClaw.\n- `kleinanzeigen_read_ad`: read one existing ad config under configured\n  `adRoots`, with contact fields redacted by default.\n- `kleinanzeigen_images_list`: list image files under one configured ad\n  directory and return relative globs usable in an ad draft.\n- `kleinanzeigen_browser_status`: inspect sanitized effective browser settings\n  and detected local browsers.\n- `kleinanzeigen_browser_check`: test current or proposed browser settings\n  through miniclaw diagnostics without changing the real config.\n- `kleinanzeigen_browser_configure`: change miniclaw browser settings only after\n  explicit confirmation.\n- `kleinanzeigen_draft_ad`: create or replace a local ad draft under configured\n  `adRoots` only after explicit confirmation.\n- `kleinanzeigen_set_ad_active`: set the top-level `active` flag for one YAML\n  ad config before scoped verify/publish.\n- `kleinanzeigen_verify`: validate the already configured miniclaw workspace.\n- `kleinanzeigen_publish`: publish or republish due, new, changed, all, combined\n  selectors, or explicitly selected ads.\n- `kleinanzeigen_update`: update changed, all, or explicitly selected ads.\n- `kleinanzeigen_delete`: delete only explicitly selected ad IDs.\n- `kleinanzeigen_download`: download new, all, or explicitly selected ads.\n- `kleinanzeigen_extend`: extend all eligible ads or explicitly selected IDs.\n\nDo not mix explicit ad IDs with selectors. For publish combinations, use\n`selectors`, for example `[\"changed\", \"due\"]`.\n\nIf a tool is unavailable, tell the user that KleinClaw must be installed and\nenabled in OpenClaw before that action can run.\n\nFile v1.0.5:references/workflow.md\n\n## Workflow\n\n1. Clarify the listing intent and selector using only non-secret details:\n   listing title, category, price, description text, image readiness, and\n   whether the target is all ads, new ads, changed ads, due ads, or specific ad\n   IDs.\n2. Run `kleinanzeigen_status` first when checking installation, plugin config,\n   runtime availability, or supported miniclaw commands.\n3. Run `kleinanzeigen_verify` before any account-changing operation when\n   practical.\n4. For publish, update, delete, download, or extend, summarize the exact\n   non-secret action and wait for explicit user confirmation.\n5. If the Kleinanzeigen plugin tools are unavailable, stop and tell the user the\n   `kleinclaw` OpenClaw plugin is required.\n6. Call the matching optional plugin tool only after confirmation:\n   `kleinanzeigen_publish`, `kleinanzeigen_update`, `kleinanzeigen_delete`,\n   `kleinanzeigen_download`, or `kleinanzeigen_extend`.\n7. Report only the sanitized result returned by the tool. If the result has\n   `needsUserAction`, tell the user to handle the account step outside chat in\n   a terminal/browser, then retry `kleinanzeigen_status` or\n   `kleinanzeigen_verify`. If the result says configuration or credentials need\n   attention, ask the user to fix that outside the chat and rerun verification.\n\nFile v1.0.5:skill-card.md\n\n## Description: <br>\nManage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[ilyazar](https://clawhub.ai/user/ilyazar) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users and developers use this skill to prepare, verify, publish, update, delete, download, or extend Kleinanzeigen listings through the KleinClaw OpenClaw plugin while keeping credentials and account state outside chat. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The authoritative security scan marked the bundle suspicious because a related review helper defaults to running nested Codex with sandboxing and approvals disabled. <br>\nMitigation: Review before installing in sensitive repositories, use no-yolo mode for the autoreview helper unless full filesystem authority is intentional, and treat admin or migration commands as production-impacting operations that require careful confirmation. <br>\nRisk: Kleinanzeigen listing operations may affect live account state or expose sensitive account configuration if handled carelessly. <br>\nMitigation: Use only KleinClaw tools, keep credentials, browser profiles, cookies, session data, and full config files out of chat, and require explicit user confirmation for mutating actions. <br>\n\n\n## Reference(s): <br>\n- [KleinClaw plugin](https://clawhub.ai/plugins/kleinclaw) <br>\n- [Kleinanzeigen Helper ClawHub page](https://clawhub.ai/ilyazar/kleinanzeigen-helper) <br>\n- [Prerequisites / Install](references/install.md) <br>\n- [Workflow](references/workflow.md) <br>\n- [Non-negotiables](references/non-negotiables.md) <br>\n- [Tool Selection](references/tool-selection.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [guidance, shell commands, configuration, markdown] <br>\n**Output Format:** [Markdown guidance with tool-selection recommendations and occasional inline shell commands] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Produces sanitized, user-facing instructions and action summaries; mutating Kleinanzeigen operations require explicit confirmation through KleinClaw tools.] <br>\n\n## Skill Version(s): <br>\n1.0.5 (source: server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v1.0.4: 13 files, 8905 bytes\n\nFiles: references/ad-authoring.md (1760b), references/browser-behaviour.md (751b), references/draft-publish-preflight.md (1010b), references/install.md (1043b), references/listing-discovery-scoping.md (762b), references/non-negotiables.md (753b), references/publish-result-caveats.md (743b), references/tool-selection.md (2047b), references/workflow.md (1306b), skill-card.md (2557b), SKILL.md (1451b), TODO/add_top_level_readme.md (123b), _meta.json (139b)\n\nFile v1.0.4:SKILL.md\n\n---\nname: kleinanzeigen-helper\ndescription: Manage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime.\n---\n\n# Kleinanzeigen Helper\n\nUse this skill when the user wants help preparing, verifying, publishing,\nupdating, deleting, downloading, or extending Kleinanzeigen listings through\nthe configured KleinClaw plugin and embedded `miniclaw` runtime.\n\n## Load Details\n\n- Read [Prerequisites / Install](references/install.md) when the user asks how\n  to install, enable, configure, or troubleshoot missing KleinClaw tools.\n- Read [Non-negotiables](references/non-negotiables.md) before any\n  Kleinanzeigen operation.\n- Read [Workflow](references/workflow.md) before verifying, publishing,\n  updating, deleting, downloading, or extending listings.\n- Read [Ad Authoring](references/ad-authoring.md) before creating or editing\n  local ad drafts.\n- Read [Draft Publish Preflight](references/draft-publish-preflight.md) before\n  publishing a drafted ad.\n- Read [Listing Discovery and Scoping](references/listing-discovery-scoping.md)\n  before acting on a specific listing.\n- Read [Browser Behaviour](references/browser-behaviour.md) when diagnosing or\n  changing runtime browser settings.\n- Read [Publish Result Caveats](references/publish-result-caveats.md) when\n  interpreting publish/update results.\n- Read [Tool Selection](references/tool-selection.md) when choosing tool\n  parameters, selectors, or ad ID handling.\n\nFile v1.0.4:_meta.json\n\n{\n  \"ownerId\": \"kn7ce0cfexsze7wp9j99en7xyx85yh3n\",\n  \"slug\": \"kleinanzeigen-helper\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1781338671406\n}\n\nFile v1.0.4:references/ad-authoring.md\n\n## Ad Authoring\n\n- Use `kleinanzeigen_ad_schema` before creating or editing a local ad draft.\n  The plugin exposes the supported `ad.yaml` fields, required values, limits,\n  enum values, and a safe draft workflow.\n- For a concrete shape reference, use the packaged inactive example\n  `examples/sample-listing/ad.yaml`. Copy it into a configured `adRoots`\n  directory before editing; never publish the example unchanged.\n- Treat KleinClaw as the source of truth for the miniclaw ad schema. User chat,\n  image filenames, and image observations provide field values; the schema\n  shape must come from `kleinanzeigen_ad_schema` and\n  `kleinanzeigen_draft_ad`.\n- Use `kleinanzeigen_images_list` for candidate image filenames and runtime\n  support checks. This tool lists files, relative globs, sizes, and basic\n  dimensions when available; it does not inspect image pixels or describe what\n  is visible.\n- If the user wants an ad based on images, use only user-provided chat context,\n  file names, existing non-secret ad examples, and any image-viewing capability\n  already available to the agent. Do not claim image details came from\n  KleinClaw unless a KleinClaw tool actually returned them.\n- Use `kleinanzeigen_read_ad` for one existing ad config under configured\n  `adRoots` when examples are useful. Contact fields are redacted by default.\n- Use `kleinanzeigen_draft_ad` only after explicit user confirmation. It creates\n  or replaces a miniclaw-shaped `ad.yaml` or `ad.yml` under configured\n  `adRoots`; it does not publish. Prefer `active: false` for first drafts.\n- After drafting, run scoped `kleinanzeigen_verify` against the new directory or\n  config path. Ask the user to review the sanitized draft summary before making\n  it active or publishing it.\n\nFile v1.0.4:references/browser-behaviour.md\n\n## Browser Behaviour\n\n- Use `kleinanzeigen_browser_status` when diagnosing login, browser launch,\n  profile, private/incognito mode, or runtime/browser mismatch issues.\n- Report only sanitized effective browser settings, such as browser, binary\n  location, private-window mode, user data directory, and profile name.\n- If publishing fails during login-state detection or browser interaction, check\n  whether `usePrivateWindow` is enabled. Private/incognito windows may interfere\n  with expected login or profile persistence.\n- Use `kleinanzeigen_browser_check` to test proposed browser settings without\n  changing the real miniclaw config.\n- Only change browser configuration with `kleinanzeigen_browser_configure` after\n  explicit user confirmation.\n\nFile v1.0.4:references/draft-publish-preflight.md\n\n## Draft Publish Preflight\n\n- When the user asks to publish a drafted ad, do not call\n  `kleinanzeigen_publish` immediately.\n- First run `kleinanzeigen_read_ad` for the exact ad directory or config path.\n  Check the sanitized summary and confirm that the intended ad, title, category,\n  image globs, and `active` state match the user's request.\n- If `active` is not `true`, tell the user that publishing requires activation,\n  then use `kleinanzeigen_set_ad_active` with `active: true` only when the\n  user's publish request or follow-up confirmation clearly authorizes that\n  activation.\n- Run scoped `kleinanzeigen_verify` after activation and before publishing.\n- Publish only with `kleinanzeigen_publish` scoped to the same exact\n  `adDirectories` or `adConfigPaths` used for the preflight. Never switch to a\n  broad selector during this flow.\n- If scoped publish returns `outcome.status: \"preflight_failed\"` for\n  `active`, do not retry publish immediately. Activate, verify, then retry\n  scoped publish.\n\nFile v1.0.4:references/install.md\n\n## Prerequisites / Install\n\n- Install [KleinClaw](https://clawhub.ai/plugins/kleinclaw), then enable it:\n\n  ```bash\n  openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart\n  ```\n\n- Configure KleinClaw under `plugins.entries.kleinclaw.config` with\n  `configPath` or `workingDirectory` in the active OpenClaw config. Use\n  `openclaw config file` to print that file path. `configPath` points at the\n  local miniclaw `config.yaml`; `workingDirectory` makes miniclaw read\n  `config.yaml` from that directory.\n- The plugin bundles the `miniclaw` runtime and this helper skill, so no\n  separate executable path is required. The standalone\n  [`kleinanzeigen-helper`](https://clawhub.ai/ilyazar/kleinanzeigen-helper)\n  skill from\n  [`ilyaZar/kleinanzeigen-helper`](https://github.com/ilyaZar/kleinanzeigen-helper)\n  is optional guidance only; the callable tools still come from the KleinClaw\n  plugin.\n- Keep Kleinanzeigen credentials, browser profiles, cookies, and full config\n  files out of chat.\n\nFile v1.0.4:references/listing-discovery-scoping.md\n\n## Listing Discovery and Scoping\n\n- When `adRoots` are configured and the user asks for a specific listing, run\n  `kleinanzeigen_list_ads` before publishing, updating, deleting, downloading,\n  or extending. Use it to resolve the exact local ad directory, config path,\n  title, ID, and active state.\n- Prefer scoped operations with `adDirectories` or `adConfigPaths` after\n  discovery. Avoid broad selectors like `all` unless the user explicitly wants a\n  broad operation.\n- For a single listing request such as \"publish the sample listing\", first list\n  with a query, then verify or publish only the matching directory/config path.\n- `kleinanzeigen_delete` still requires explicit `adIds`, even when the\n  operation is also scoped to a directory or config path.\n\nFile v1.0.4:references/non-negotiables.md\n\n## Non-negotiables\n\n- Use only the Kleinanzeigen plugin tools for operations.\n- Do not use `exec`, browser automation, direct HTTP requests, or shell commands\n  for Kleinanzeigen work.\n- Do not ask for, read, print, summarize, store, inspect, or infer Kleinanzeigen\n  usernames, passwords, SMS or 2FA codes, cookies, browser profiles, session\n  data, or credential-bearing config files.\n- Do not ask the user to paste `config.yaml`, browser settings, cookies, logs,\n  or credential-like snippets.\n- Keep `adRoots` narrow. Do not broaden `adRoots` or lower `approvalMode` for\n  convenience.\n- KleinClaw tool approval depends on local OpenClaw configuration. Mutating\n  tools always require explicit user confirmation through their `confirm`\n  parameter.\n\nFile v1.0.4:references/publish-result-caveats.md\n\n## Publish Result Caveats\n\n- Check the structured `outcome` first. Success evidence can include `DONE:`\n  counts, published or updated IDs, selected ad config changes observed after\n  miniclaw exits, or another explicit success signal returned by KleinClaw.\n- If the structured result is empty, times out, reports a noisy process exit, or\n  stops after browser interaction, do not assume failure automatically.\n- If the result is unclear, tell the user what happened and suggest checking the\n  listing on Kleinanzeigen or rerunning a scoped list, verify, or download when\n  appropriate.\n- Treat `Approval timed out` as an OpenClaw/tool approval timing issue, not as a\n  Kleinanzeigen runtime failure. Retry only after the user confirms again.\n\nFile v1.0.4:references/tool-selection.md\n\n## Tool Selection\n\n- `kleinanzeigen_status`: check runtime availability, config wiring, workspace\n  mode, version, and supported commands without reading the config contents.\n- `kleinanzeigen_list_ads`: discover configured local ad folders and resolve\n  titles, IDs, active state, config paths, and directories before scoped\n  operations.\n- `kleinanzeigen_ad_schema`: inspect the safe ad config schema and draft\n  workflow exposed by KleinClaw.\n- `kleinanzeigen_read_ad`: read one existing ad config under configured\n  `adRoots`, with contact fields redacted by default.\n- `kleinanzeigen_images_list`: list image files under one configured ad\n  directory and return relative globs usable in an ad draft.\n- `kleinanzeigen_browser_status`: inspect sanitized effective browser settings\n  and detected local browsers.\n- `kleinanzeigen_browser_check`: test current or proposed browser settings\n  through miniclaw diagnostics without changing the real config.\n- `kleinanzeigen_browser_configure`: change miniclaw browser settings only after\n  explicit confirmation.\n- `kleinanzeigen_draft_ad`: create or replace a local ad draft under configured\n  `adRoots` only after explicit confirmation.\n- `kleinanzeigen_set_ad_active`: set the top-level `active` flag for one YAML\n  ad config before scoped verify/publish.\n- `kleinanzeigen_verify`: validate the already configured miniclaw workspace.\n- `kleinanzeigen_publish`: publish or republish due, new, changed, all, combined\n  selectors, or explicitly selected ads.\n- `kleinanzeigen_update`: update changed, all, or explicitly selected ads.\n- `kleinanzeigen_delete`: delete only explicitly selected ad IDs.\n- `kleinanzeigen_download`: download new, all, or explicitly selected ads.\n- `kleinanzeigen_extend`: extend all eligible ads or explicitly selected IDs.\n\nDo not mix explicit ad IDs with selectors. For publish combinations, use\n`selectors`, for example `[\"changed\", \"due\"]`.\n\nIf a tool is unavailable, tell the user that KleinClaw must be installed and\nenabled in OpenClaw before that action can run.\n\nFile v1.0.4:references/workflow.md\n\n## Workflow\n\n1. Clarify the listing intent and selector using only non-secret details:\n   listing title, category, price, description text, image readiness, and\n   whether the target is all ads, new ads, changed ads, due ads, or specific ad\n   IDs.\n2. Run `kleinanzeigen_status` first when checking installation, plugin config,\n   runtime availability, or supported miniclaw commands.\n3. Run `kleinanzeigen_verify` before any account-changing operation when\n   practical.\n4. For publish, update, delete, download, or extend, summarize the exact\n   non-secret action and wait for explicit user confirmation.\n5. If the Kleinanzeigen plugin tools are unavailable, stop and tell the user the\n   `kleinclaw` OpenClaw plugin is required.\n6. Call the matching optional plugin tool only after confirmation:\n   `kleinanzeigen_publish`, `kleinanzeigen_update`, `kleinanzeigen_delete`,\n   `kleinanzeigen_download`, or `kleinanzeigen_extend`.\n7. Report only the sanitized result returned by the tool. If the result has\n   `needsUserAction`, tell the user to handle the account step outside chat in\n   a terminal/browser, then retry `kleinanzeigen_status` or\n   `kleinanzeigen_verify`. If the result says configuration or credentials need\n   attention, ask the user to fix that outside the chat and rerun verification.\n\nFile v1.0.4:skill-card.md\n\n## Description: <br>\nManage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[ilyazar](https://clawhub.ai/user/ilyazar) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and agents use this skill to prepare, verify, publish, update, delete, download, and extend Kleinanzeigen listings through a configured KleinClaw OpenClaw plugin while avoiding credential exposure. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can guide an agent toward real listing mutations such as publish, update, delete, extend, draft, and browser-configuration actions. <br>\nMitigation: Require explicit confirmation after checking the exact listing, action, and scope before any mutating operation. <br>\nRisk: Credential-bearing data such as passwords, cookies, browser profiles, session data, and full config files may be sensitive. <br>\nMitigation: Keep those values out of chat and report only sanitized configuration or tool results. <br>\nRisk: Broad adRoots or broad selectors can apply an operation to unintended listings. <br>\nMitigation: Keep adRoots narrow, discover the target listing first, and prefer scoped adDirectories or adConfigPaths. <br>\n\n\n## Reference(s): <br>\n- [KleinClaw plugin](https://clawhub.ai/plugins/kleinclaw) <br>\n- [Kleinanzeigen helper listing](https://clawhub.ai/ilyazar/kleinanzeigen-helper) <br>\n- [Prerequisites / Install](references/install.md) <br>\n- [Workflow](references/workflow.md) <br>\n- [Non-negotiables](references/non-negotiables.md) <br>\n- [Tool Selection](references/tool-selection.md) <br>\n- [Ad Authoring](references/ad-authoring.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [guidance, markdown, shell commands, configuration] <br>\n**Output Format:** [Markdown guidance with inline shell commands and configuration references] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Outputs should remain sanitized and should not include credentials, cookies, browser profiles, session data, or full configuration files.] <br>\n\n## Skill Version(s): <br>\n1.0.4 (source: server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.1.3: 12 files, 7368 bytes\n\nFiles: references/ad-authoring.md (1561b), references/browser-behaviour.md (742b), references/draft-publish-preflight.md (1010b), references/install.md (504b), references/listing-discovery-scoping.md (749b), references/non-negotiables.md (660b), references/publish-result-caveats.md (738b), references/tool-selection.md (2036b), references/workflow.md (1315b), SKILL.md (1670b), TODO/add_top_level_readme.md (123b), _meta.json (139b)\n\nFile v0.1.3:SKILL.md\n\n---\nname: kleinanzeigen-helper\ndescription: Manage Kleinanzeigen listings with the required KleinClaw plugin.\nlicense: MIT-0\n---\n\n# Kleinanzeigen Helper\n\nUse this skill when the user wants help preparing, verifying, publishing,\nupdating, deleting, downloading, or extending Kleinanzeigen listings through\ntheir already configured local `kleinanzeigen-bot` setup.\n\n## Requirements / Install\n\n1. Install\n   [`kleinanzeigen-bot`](https://github.com/Second-Hand-Friends/kleinanzeigen-bot#installation):\n   bot engine\n2. Install [`kleinclaw`](https://clawhub.ai/plugins/kleinclaw): plugin for your\n   OpenClaw agent\n\n## Load Details\n\n- Read [Prerequisites / Install](references/install.md) when the user asks how\n  to install, enable, configure, or troubleshoot missing KleinClaw tools.\n- Read [Non-negotiables](references/non-negotiables.md) before any Kleinanzeigen\n  operation.\n- Read [Workflow](references/workflow.md) before verifying, publishing,\n  updating, deleting, downloading, or extending listings.\n- Read [Ad Authoring](references/ad-authoring.md) before creating or editing\n  local ad drafts.\n- Read [Draft Publish Preflight](references/draft-publish-preflight.md) before\n  publishing a drafted ad.\n- Read [Listing Discovery and Scoping](references/listing-discovery-scoping.md)\n  before acting on a specific listing.\n- Read [Browser Behaviour](references/browser-behaviour.md) when diagnosing or\n  changing bot browser settings.\n- Read [Publish Result Caveats](references/publish-result-caveats.md) when\n  interpreting publish/update results.\n- Read [Tool Selection](references/tool-selection.md) when choosing tool\n  parameters, selectors, or ad ID handling.\n\nFile v0.1.3:_meta.json\n\n{\n  \"ownerId\": \"kn7ce0cfexsze7wp9j99en7xyx85yh3n\",\n  \"slug\": \"kleinanzeigen-helper\",\n  \"version\": \"0.1.3\",\n  \"publishedAt\": 1777879953980\n}\n\nFile v0.1.3:references/ad-authoring.md\n\n## Ad Authoring\n\n- Use `kleinanzeigen_ad_schema` before creating or editing a local ad draft.\n  The plugin exposes the supported `ad.yaml` fields, required values, limits,\n  enum values, and a safe draft workflow.\n- Treat KleinClaw as the source of truth for the `kleinanzeigen-bot` ad schema.\n  User chat, image filenames, and image observations provide field values; the\n  schema shape must come from `kleinanzeigen_ad_schema` and\n  `kleinanzeigen_draft_ad`.\n- Use `kleinanzeigen_images_list` for candidate image filenames and bot support\n  checks. This tool lists files, relative globs, sizes, and basic dimensions\n  when available; it does not inspect image pixels or describe what is visible.\n- If the user wants an ad based on images, use only user-provided chat context,\n  file names, existing non-secret ad examples, and any image-viewing capability\n  already available to the agent. Do not claim image details came from\n  KleinClaw unless a KleinClaw tool actually returned them.\n- Use `kleinanzeigen_read_ad` for one existing ad config under configured\n  `adRoots` when examples are useful. Contact fields are redacted by default.\n- Use `kleinanzeigen_draft_ad` only after explicit user confirmation. It creates\n  or replaces a bot-schema-shaped `ad.yaml` or `ad.yml` under configured\n  `adRoots`; it does not publish. Prefer `active: false` for first drafts.\n- After drafting, run scoped `kleinanzeigen_verify` against the new directory or\n  config path. Ask the user to review the sanitized draft summary before making\n  it active or publishing it.\n\nFile v0.1.3:references/browser-behaviour.md\n\n## Browser Behaviour\n\n- Use `kleinanzeigen_browser_status` when diagnosing login, browser launch,\n  profile, private/incognito mode, or bot/browser mismatch issues.\n- Report only sanitized effective browser settings, such as browser, binary\n  location, private-window mode, user data directory, and profile name.\n- If publishing fails during login-state detection or browser interaction, check\n  whether `usePrivateWindow` is enabled. Private/incognito windows may interfere\n  with expected login or profile persistence.\n- Use `kleinanzeigen_browser_check` to test proposed browser settings without\n  changing the real bot config.\n- Only change browser configuration with `kleinanzeigen_browser_configure` after\n  explicit user confirmation.\n\nFile v0.1.3:references/draft-publish-preflight.md\n\n## Draft Publish Preflight\n\n- When the user asks to publish a drafted ad, do not call\n  `kleinanzeigen_publish` immediately.\n- First run `kleinanzeigen_read_ad` for the exact ad directory or config path.\n  Check the sanitized summary and confirm that the intended ad, title, category,\n  image globs, and `active` state match the user's request.\n- If `active` is not `true`, tell the user that publishing requires activation,\n  then use `kleinanzeigen_set_ad_active` with `active: true` only when the\n  user's publish request or follow-up confirmation clearly authorizes that\n  activation.\n- Run scoped `kleinanzeigen_verify` after activation and before publishing.\n- Publish only with `kleinanzeigen_publish` scoped to the same exact\n  `adDirectories` or `adConfigPaths` used for the preflight. Never switch to a\n  broad selector during this flow.\n- If scoped publish returns `outcome.status: \"preflight_failed\"` for\n  `active`, do not retry publish immediately. Activate, verify, then retry\n  scoped publish.\n\nFile v0.1.3:references/install.md\n\n## Prerequisites / Install\n\n- Install and configure\n  [kleinanzeigen-bot](https://github.com/Second-Hand-Friends/kleinanzeigen-bot)\n  locally first.\n- Install [KleinClaw](https://clawhub.ai/plugins/kleinclaw), then enable it:\n\n  ```bash\n  openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart\n  ```\n\n- Configure KleinClaw under `plugins.entries.kleinclaw.config`.\n- Keep bot credentials, browser profiles, cookies, and full config files out of\n  chat.\n\nFile v0.1.3:references/listing-discovery-scoping.md\n\n## Listing Discovery and Scoping\n\n- When `adRoots` are configured and the user asks for a specific listing, run\n  `kleinanzeigen_list_ads` before publishing, updating, deleting, downloading,\n  or extending. Use it to resolve the exact local ad directory, config path,\n  title, ID, and active state.\n- Prefer scoped operations with `adDirectories` or `adConfigPaths` after\n  discovery. Avoid broad selectors like `all` unless the user explicitly wants a\n  broad operation.\n- For a single listing request such as \"publish Boxen\", first list with a query,\n  then verify or publish only the matching directory/config path.\n- `kleinanzeigen_delete` still requires explicit `adIds`, even when the\n  operation is also scoped to a directory or config path.\n\nFile v0.1.3:references/non-negotiables.md\n\n## Non-negotiables\n\n- Use only the Kleinanzeigen plugin tools for operations.\n- Do not use `exec`, browser automation, direct HTTP requests, or shell commands\n  for Kleinanzeigen work.\n- Do not ask for, read, print, summarize, store, inspect, or infer Kleinanzeigen\n  usernames, passwords, SMS or 2FA codes, cookies, browser profiles, session\n  data, or credential-bearing config files.\n- Do not ask the user to paste `config.yaml`, browser settings, cookies, logs,\n  or credential-like snippets.\n- KleinClaw tool approval depends on local OpenClaw configuration. Mutating\n  tools always require explicit user confirmation through their `confirm`\n  parameter.\n\nFile v0.1.3:references/publish-result-caveats.md\n\n## Publish Result Caveats\n\n- Check the structured `outcome` first. Success evidence can include `DONE:`\n  counts, published or updated IDs, selected ad config changes observed after\n  the bot exits, or another explicit success signal returned by KleinClaw.\n- If the structured result is empty, times out, reports a noisy process exit, or\n  stops after browser interaction, do not assume failure automatically.\n- If the result is unclear, tell the user what happened and suggest checking the\n  listing on Kleinanzeigen or rerunning a scoped list, verify, or download when\n  appropriate.\n- Treat `Approval timed out` as an OpenClaw/tool approval timing issue, not as a\n  Kleinanzeigen bot failure. Retry only after the user confirms again.\n\nFile v0.1.3:references/tool-selection.md\n\n## Tool Selection\n\n- `kleinanzeigen_status`: check bot availability, config wiring, workspace mode,\n  version, and supported commands without reading the config contents.\n- `kleinanzeigen_list_ads`: discover configured local ad folders and resolve\n  titles, IDs, active state, config paths, and directories before scoped\n  operations.\n- `kleinanzeigen_ad_schema`: inspect the safe ad config schema and draft\n  workflow exposed by KleinClaw.\n- `kleinanzeigen_read_ad`: read one existing ad config under configured\n  `adRoots`, with contact fields redacted by default.\n- `kleinanzeigen_images_list`: list image files under one configured ad\n  directory and return relative globs usable in an ad draft.\n- `kleinanzeigen_browser_status`: inspect sanitized effective browser settings\n  and detected local browsers.\n- `kleinanzeigen_browser_check`: test current or proposed browser settings\n  through bot diagnostics without changing the real config.\n- `kleinanzeigen_browser_configure`: change local bot browser settings only\n  after explicit confirmation.\n- `kleinanzeigen_draft_ad`: create or replace a local ad draft under configured\n  `adRoots` only after explicit confirmation.\n- `kleinanzeigen_set_ad_active`: set the top-level `active` flag for one YAML\n  ad config before scoped verify/publish.\n- `kleinanzeigen_verify`: validate the already configured local bot setup.\n- `kleinanzeigen_publish`: publish or republish due, new, changed, all, combined\n  selectors, or explicitly selected ads.\n- `kleinanzeigen_update`: update changed, all, or explicitly selected ads.\n- `kleinanzeigen_delete`: delete only explicitly selected ad IDs.\n- `kleinanzeigen_download`: download new, all, or explicitly selected ads.\n- `kleinanzeigen_extend`: extend all eligible ads or explicitly selected IDs.\n\nDo not mix explicit ad IDs with selectors. For publish combinations, use\n`selectors`, for example `[\"changed\", \"due\"]`.\n\nIf a tool is unavailable, tell the user that KleinClaw must be installed and\nenabled in OpenClaw before that action can run.\n\nFile v0.1.3:references/workflow.md\n\n## Workflow\n\n1. Clarify the listing intent and selector using only non-secret details:\n   listing title, category, price, description text, image readiness, and\n   whether the target is all ads, new ads, changed ads, due ads, or specific ad\n   IDs.\n2. Run `kleinanzeigen_status` first when checking installation, plugin config,\n   bot availability, or supported bot commands.\n3. Run `kleinanzeigen_verify` before any account-changing operation when\n   practical.\n4. For publish, update, delete, download, or extend, summarize the exact\n   non-secret action and wait for explicit user confirmation.\n5. If the Kleinanzeigen plugin tools are unavailable, stop and tell the user the\n   `kleinclaw` OpenClaw plugin is required.\n6. Call the matching optional plugin tool only after confirmation:\n   `kleinanzeigen_publish`, `kleinanzeigen_update`, `kleinanzeigen_delete`,\n   `kleinanzeigen_download`, or `kleinanzeigen_extend`.\n7. Report only the sanitized result returned by the tool. If the result has\n   `needsUserAction`, tell the user to run the local bot directly in a\n   terminal/browser, finish the account step, then retry `kleinanzeigen_status`\n   or `kleinanzeigen_verify`. If the result says configuration or credentials\n   need attention, ask the user to fix that outside the chat and rerun\n   verification.\n\nFile v0.1.3:TODO/add_top_level_readme.md\n\n# TODO\n\n1. add a top level README introducing the skill a bit\n2. check if ClawHub allows\n3. check if agents.io specs allow\n\nArchive v1.0.3: 12 files, 8656 bytes\n\nFiles: references/ad-authoring.md (1561b), references/browser-behaviour.md (742b), references/draft-publish-preflight.md (1010b), references/install.md (504b), references/listing-discovery-scoping.md (749b), references/non-negotiables.md (660b), references/publish-result-caveats.md (738b), references/tool-selection.md (2036b), references/workflow.md (1315b), skill-card.md (3252b), SKILL.md (1667b), _meta.json (139b)\n\nFile v1.0.3:SKILL.md\n\n---\nname: kleinanzeigen-helper\ndescription: Manage Kleinanzeigen listings with the required KleinClaw plugin.\nlicense: MIT-0\n---\n\n# Kleinanzeigen Helper\n\nUse this skill when the user wants help preparing, verifying, publishing,\nupdating, deleting, downloading, or extending Kleinanzeigen listings through\ntheir already configured local `kleinanzeigen-bot` setup.\n\n## Requirements / Install\n\n1. Install\n   [`kleinanzeigen-bot`](https://github.com/Second-Hand-Friends/kleinanzeigen-bot#installation):\n   bot engine\n2. Install [`kleinclaw`](https://clawhub.ai/plugins/kleinclaw): plugin for your\nOpenClaw agent\n\n## Load Details\n\n- Read [Prerequisites / Install](references/install.md) when the user asks how\n  to install, enable, configure, or troubleshoot missing KleinClaw tools.\n- Read [Non-negotiables](references/non-negotiables.md) before any Kleinanzeigen\n  operation.\n- Read [Workflow](references/workflow.md) before verifying, publishing,\n  updating, deleting, downloading, or extending listings.\n- Read [Ad Authoring](references/ad-authoring.md) before creating or editing\n  local ad drafts.\n- Read [Draft Publish Preflight](references/draft-publish-preflight.md) before\n  publishing a drafted ad.\n- Read [Listing Discovery and Scoping](references/listing-discovery-scoping.md)\n  before acting on a specific listing.\n- Read [Browser Behaviour](references/browser-behaviour.md) when diagnosing or\n  changing bot browser settings.\n- Read [Publish Result Caveats](references/publish-result-caveats.md) when\n  interpreting publish/update results.\n- Read [Tool Selection](references/tool-selection.md) when choosing tool\n  parameters, selectors, or ad ID handling.\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn7ce0cfexsze7wp9j99en7xyx85yh3n\",\n  \"slug\": \"kleinanzeigen-helper\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1777879237695\n}\n\nFile v1.0.3:references/ad-authoring.md\n\n## Ad Authoring\n\n- Use `kleinanzeigen_ad_schema` before creating or editing a local ad draft.\n  The plugin exposes the supported `ad.yaml` fields, required values, limits,\n  enum values, and a safe draft workflow.\n- Treat KleinClaw as the source of truth for the `kleinanzeigen-bot` ad schema.\n  User chat, image filenames, and image observations provide field values; the\n  schema shape must come from `kleinanzeigen_ad_schema` and\n  `kleinanzeigen_draft_ad`.\n- Use `kleinanzeigen_images_list` for candidate image filenames and bot support\n  checks. This tool lists files, relative globs, sizes, and basic dimensions\n  when available; it does not inspect image pixels or describe what is visible.\n- If the user wants an ad based on images, use only user-provided chat context,\n  file names, existing non-secret ad examples, and any image-viewing capability\n  already available to the agent. Do not claim image details came from\n  KleinClaw unless a KleinClaw tool actually returned them.\n- Use `kleinanzeigen_read_ad` for one existing ad config under configured\n  `adRoots` when examples are useful. Contact fields are redacted by default.\n- Use `kleinanzeigen_draft_ad` only after explicit user confirmation. It creates\n  or replaces a bot-schema-shaped `ad.yaml` or `ad.yml` under configured\n  `adRoots`; it does not publish. Prefer `active: false` for first drafts.\n- After drafting, run scoped `kleinanzeigen_verify` against the new directory or\n  config path. Ask the user to review the sanitized draft summary before making\n  it active or publishing it.\n\nFile v1.0.3:references/browser-behaviour.md\n\n## Browser Behaviour\n\n- Use `kleinanzeigen_browser_status` when diagnosing login, browser launch,\n  profile, private/incognito mode, or bot/browser mismatch issues.\n- Report only sanitized effective browser settings, such as browser, binary\n  location, private-window mode, user data directory, and profile name.\n- If publishing fails during login-state detection or browser interaction, check\n  whether `usePrivateWindow` is enabled. Private/incognito windows may interfere\n  with expected login or profile persistence.\n- Use `kleinanzeigen_browser_check` to test proposed browser settings without\n  changing the real bot config.\n- Only change browser configuration with `kleinanzeigen_browser_configure` after\n  explicit user confirmation.\n\nFile v1.0.3:references/draft-publish-preflight.md\n\n## Draft Publish Preflight\n\n- When the user asks to publish a drafted ad, do not call\n  `kleinanzeigen_publish` immediately.\n- First run `kleinanzeigen_read_ad` for the exact ad directory or config path.\n  Check the sanitized summary and confirm that the intended ad, title, category,\n  image globs, and `active` state match the user's request.\n- If `active` is not `true`, tell the user that publishing requires activation,\n  then use `kleinanzeigen_set_ad_active` with `active: true` only when the\n  user's publish request or follow-up confirmation clearly authorizes that\n  activation.\n- Run scoped `kleinanzeigen_verify` after activation and before publishing.\n- Publish only with `kleinanzeigen_publish` scoped to the same exact\n  `adDirectories` or `adConfigPaths` used for the preflight. Never switch to a\n  broad selector during this flow.\n- If scoped publish returns `outcome.status: \"preflight_failed\"` for\n  `active`, do not retry publish immediately. Activate, verify, then retry\n  scoped publish.\n\nFile v1.0.3:references/install.md\n\n## Prerequisites / Install\n\n- Install and configure\n  [kleinanzeigen-bot](https://github.com/Second-Hand-Friends/kleinanzeigen-bot)\n  locally first.\n- Install [KleinClaw](https://clawhub.ai/plugins/kleinclaw), then enable it:\n\n  ```bash\n  openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart\n  ```\n\n- Configure KleinClaw under `plugins.entries.kleinclaw.config`.\n- Keep bot credentials, browser profiles, cookies, and full config files out of\n  chat.\n\nFile v1.0.3:references/listing-discovery-scoping.md\n\n## Listing Discovery and Scoping\n\n- When `adRoots` are configured and the user asks for a specific listing, run\n  `kleinanzeigen_list_ads` before publishing, updating, deleting, downloading,\n  or extending. Use it to resolve the exact local ad directory, config path,\n  title, ID, and active state.\n- Prefer scoped operations with `adDirectories` or `adConfigPaths` after\n  discovery. Avoid broad selectors like `all` unless the user explicitly wants a\n  broad operation.\n- For a single listing request such as \"publish Boxen\", first list with a query,\n  then verify or publish only the matching directory/config path.\n- `kleinanzeigen_delete` still requires explicit `adIds`, even when the\n  operation is also scoped to a directory or config path.\n\nFile v1.0.3:references/non-negotiables.md\n\n## Non-negotiables\n\n- Use only the Kleinanzeigen plugin tools for operations.\n- Do not use `exec`, browser automation, direct HTTP requests, or shell commands\n  for Kleinanzeigen work.\n- Do not ask for, read, print, summarize, store, inspect, or infer Kleinanzeigen\n  usernames, passwords, SMS or 2FA codes, cookies, browser profiles, session\n  data, or credential-bearing config files.\n- Do not ask the user to paste `config.yaml`, browser settings, cookies, logs,\n  or credential-like snippets.\n- KleinClaw tool approval depends on local OpenClaw configuration. Mutating\n  tools always require explicit user confirmation through their `confirm`\n  parameter.\n\nFile v1.0.3:references/publish-result-caveats.md\n\n## Publish Result Caveats\n\n- Check the structured `outcome` first. Success evidence can include `DONE:`\n  counts, published or updated IDs, selected ad config changes observed after\n  the bot exits, or another explicit success signal returned by KleinClaw.\n- If the structured result is empty, times out, reports a noisy process exit, or\n  stops after browser interaction, do not assume failure automatically.\n- If the result is unclear, tell the user what happened and suggest checking the\n  listing on Kleinanzeigen or rerunning a scoped list, verify, or download when\n  appropriate.\n- Treat `Approval timed out` as an OpenClaw/tool approval timing issue, not as a\n  Kleinanzeigen bot failure. Retry only after the user confirms again.\n\nFile v1.0.3:references/tool-selection.md\n\n## Tool Selection\n\n- `kleinanzeigen_status`: check bot availability, config wiring, workspace mode,\n  version, and supported commands without reading the config contents.\n- `kleinanzeigen_list_ads`: discover configured local ad folders and resolve\n  titles, IDs, active state, config paths, and directories before scoped\n  operations.\n- `kleinanzeigen_ad_schema`: inspect the safe ad config schema and draft\n  workflow exposed by KleinClaw.\n- `kleinanzeigen_read_ad`: read one existing ad config under configured\n  `adRoots`, with contact fields redacted by default.\n- `kleinanzeigen_images_list`: list image files under one configured ad\n  directory and return relative globs usable in an ad draft.\n- `kleinanzeigen_browser_status`: inspect sanitized effective browser settings\n  and detected local browsers.\n- `kleinanzeigen_browser_check`: test current or proposed browser settings\n  through bot diagnostics without changing the real config.\n- `kleinanzeigen_browser_configure`: change local bot browser settings only\n  after explicit confirmation.\n- `kleinanzeigen_draft_ad`: create or replace a local ad draft under configured\n  `adRoots` only after explicit confirmation.\n- `kleinanzeigen_set_ad_active`: set the top-level `active` flag for one YAML\n  ad config before scoped verify/publish.\n- `kleinanzeigen_verify`: validate the already configured local bot setup.\n- `kleinanzeigen_publish`: publish or republish due, new, changed, all, combined\n  selectors, or explicitly selected ads.\n- `kleinanzeigen_update`: update changed, all, or explicitly selected ads.\n- `kleinanzeigen_delete`: delete only explicitly selected ad IDs.\n- `kleinanzeigen_download`: download new, all, or explicitly selected ads.\n- `kleinanzeigen_extend`: extend all eligible ads or explicitly selected IDs.\n\nDo not mix explicit ad IDs with selectors. For publish combinations, use\n`selectors`, for example `[\"changed\", \"due\"]`.\n\nIf a tool is unavailable, tell the user that KleinClaw must be installed and\nenabled in OpenClaw before that action can run.\n\nFile v1.0.3:references/workflow.md\n\n## Workflow\n\n1. Clarify the listing intent and selector using only non-secret details:\n   listing title, category, price, description text, image readiness, and\n   whether the target is all ads, new ads, changed ads, due ads, or specific ad\n   IDs.\n2. Run `kleinanzeigen_status` first when checking installation, plugin config,\n   bot availability, or supported bot commands.\n3. Run `kleinanzeigen_verify` before any account-changing operation when\n   practical.\n4. For publish, update, delete, download, or extend, summarize the exact\n   non-secret action and wait for explicit user confirmation.\n5. If the Kleinanzeigen plugin tools are unavailable, stop and tell the user the\n   `kleinclaw` OpenClaw plugin is required.\n6. Call the matching optional plugin tool only after confirmation:\n   `kleinanzeigen_publish`, `kleinanzeigen_update`, `kleinanzeigen_delete`,\n   `kleinanzeigen_download`, or `kleinanzeigen_extend`.\n7. Report only the sanitized result returned by the tool. If the result has\n   `needsUserAction`, tell the user to run the local bot directly in a\n   terminal/browser, finish the account step, then retry `kleinanzeigen_status`\n   or `kleinanzeigen_verify`. If the result says configuration or credentials\n   need attention, ask the user to fix that outside the chat and rerun\n   verification.\n\nFile v1.0.3:skill-card.md\n\n## Description: <br>\nManage Kleinanzeigen listings with the required KleinClaw plugin. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[ilyazar](https://clawhub.ai/user/ilyazar) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users and agents use this skill to prepare, verify, publish, update, delete, download, and extend Kleinanzeigen listings through an already configured local KleinClaw and kleinanzeigen-bot setup. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can guide account-changing actions such as publishing, updating, deleting, extending, activation, drafting, or browser configuration changes. <br>\nMitigation: Require explicit user confirmation and check the exact listing, selector, IDs, and action summary before approving any mutating KleinClaw tool call. <br>\nRisk: Kleinanzeigen credentials, cookies, browser profiles, 2FA codes, full config files, and logs may contain sensitive account data. <br>\nMitigation: Keep those secrets out of chat and report only sanitized settings, summaries, and tool results. <br>\nRisk: Broad selectors can affect more listings than intended. <br>\nMitigation: Resolve the intended listing with scoped discovery and prefer exact ad directories, config paths, or explicit IDs for publish, update, delete, download, and extend operations. <br>\nRisk: Publish or update results can be ambiguous when browser interaction, timeouts, or local approval timing interrupts the flow. <br>\nMitigation: Inspect the structured outcome first, avoid assuming failure from an unclear result, and use scoped list, verify, download, or user-side Kleinanzeigen checks when needed. <br>\n\n\n## Reference(s): <br>\n- [Kleinanzeigen helper on ClawHub](https://clawhub.ai/ilyazar/kleinanzeigen-helper) <br>\n- [KleinClaw plugin](https://clawhub.ai/plugins/kleinclaw) <br>\n- [kleinanzeigen-bot](https://github.com/Second-Hand-Friends/kleinanzeigen-bot) <br>\n- [Prerequisites / Install](references/install.md) <br>\n- [Non-negotiables](references/non-negotiables.md) <br>\n- [Workflow](references/workflow.md) <br>\n- [Ad Authoring](references/ad-authoring.md) <br>\n- [Draft Publish Preflight](references/draft-publish-preflight.md) <br>\n- [Listing Discovery and Scoping](references/listing-discovery-scoping.md) <br>\n- [Browser Behaviour](references/browser-behaviour.md) <br>\n- [Publish Result Caveats](references/publish-result-caveats.md) <br>\n- [Tool Selection](references/tool-selection.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [guidance, markdown, shell commands, configuration] <br>\n**Output Format:** [Markdown with inline shell commands and configuration guidance] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Reports only sanitized action summaries and results returned by KleinClaw tools.] <br>\n\n## Skill Version(s): <br>\n1.0.3 (source: server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v1.0.2: 11 files, 7127 bytes\n\nFiles: references/ad-authoring.md (1561b), references/browser-behaviour.md (742b), references/draft-publish-preflight.md (1010b), references/install.md (504b), references/listing-discovery-scoping.md (749b), references/non-negotiables.md (660b), references/publish-result-caveats.md (738b), references/tool-selection.md (2036b), references/workflow.md (1315b), SKILL.md (1694b), _meta.json (139b)\n\nFile v1.0.2:SKILL.md\n\n---\nname: kleinanzeigen-helper-skill\ndescription: Manage Kleinanzeigen listings with the required KleinClaw plugin.\nlicense: MIT-0\n---\n\n# Kleinanzeigen Helper\n\nUse this skill when the user wants help preparing, verifying, publishing,\nupdating, deleting, downloading, or extending Kleinanzeigen listings through\ntheir already configured local `kleinanzeigen-bot` setup.\n\n## Requirements / Install\n\n1. Install\n   [`kleinanzeigen-bot`](https://github.com/Second-Hand-Friends/kleinanzeigen-bot#installation):\n   bot engine driving\n2. Install [`kleinclaw`](https://github.com/ilyaZar/kleinclaw): dedicated plugin\n   for your OpenClaw agent\n\n## Load Details\n\n- Read [Prerequisites / Install](references/install.md) when the user asks how\n  to install, enable, configure, or troubleshoot missing KleinClaw tools.\n- Read [Non-negotiables](references/non-negotiables.md) before any Kleinanzeigen\n  operation.\n- Read [Workflow](references/workflow.md) before verifying, publishing,\n  updating, deleting, downloading, or extending listings.\n- Read [Ad Authoring](references/ad-authoring.md) before creating or editing\n  local ad drafts.\n- Read [Draft Publish Preflight](references/draft-publish-preflight.md) before\n  publishing a drafted ad.\n- Read [Listing Discovery and Scoping](references/listing-discovery-scoping.md)\n  before acting on a specific listing.\n- Read [Browser Behaviour](references/browser-behaviour.md) when diagnosing or\n  changing bot browser settings.\n- Read [Publish Result Caveats](references/publish-result-caveats.md) when\n  interpreting publish/update results.\n- Read [Tool Selection](references/tool-selection.md) when choosing tool\n  parameters, selectors, or ad ID handling.\n\nFile v1.0.2:_meta.json\n\n{\n  \"ownerId\": \"kn7ce0cfexsze7wp9j99en7xyx85yh3n\",\n  \"slug\": \"kleinanzeigen-helper\",\n  \"version\": \"1.0.2\",\n  \"publishedAt\": 1777877632774\n}\n\nFile v1.0.2:references/ad-authoring.md\n\n## Ad Authoring\n\n- Use `kleinanzeigen_ad_schema` before creating or editing a local ad draft.\n  The plugin exposes the supported `ad.yaml` fields, required values, limits,\n  enum values, and a safe draft workflow.\n- Treat KleinClaw as the source of truth for the `kleinanzeigen-bot` ad schema.\n  User chat, image filenames, and image observations provide field values; the\n  schema shape must come from `kleinanzeigen_ad_schema` and\n  `kleinanzeigen_draft_ad`.\n- Use `kleinanzeigen_images_list` for candidate image filenames and bot support\n  checks. This tool lists files, relative globs, sizes, and basic dimensions\n  when available; it does not inspect image pixels or describe what is visible.\n- If the user wants an ad based on images, use only user-provided chat context,\n  file names, existing non-secret ad examples, and any image-viewing capability\n  already available to the agent. Do not claim image details came from\n  KleinClaw unless a KleinClaw tool actually returned them.\n- Use `kleinanzeigen_read_ad` for one existing ad config under configured\n  `adRoots` when examples are useful. Contact fields are redacted by default.\n- Use `kleinanzeigen_draft_ad` only after explicit user confirmation. It creates\n  or replaces a bot-schema-shaped `ad.yaml` or `ad.yml` under configured\n  `adRoots`; it does not publish. Prefer `active: false` for first drafts.\n- After drafting, run scoped `kleinanzeigen_verify` against the new directory or\n  config path. Ask the user to review the sanitized draft summary before making\n  it active or publishing it.\n\nFile v1.0.2:references/browser-behaviour.md\n\n## Browser Behaviour\n\n- Use `kleinanzeigen_browser_status` when diagnosing login, browser launch,\n  profile, private/incognito mode, or bot/browser mismatch issues.\n- Report only sanitized effective browser settings, such as browser, binary\n  location, private-window mode, user data directory, and profile name.\n- If publishing fails during login-state detection or browser interaction, check\n  whether `usePrivateWindow` is enabled. Private/incognito windows may interfere\n  with expected login or profile persistence.\n- Use `kleinanzeigen_browser_check` to test proposed browser settings without\n  changing the real bot config.\n- Only change browser configuration with `kleinanzeigen_browser_configure` after\n  explicit user confirmation.\n\nFile v1.0.2:references/draft-publish-preflight.md\n\n## Draft Publish Preflight\n\n- When the user asks to publish a drafted ad, do not call\n  `kleinanzeigen_publish` immediately.\n- First run `kleinanzeigen_read_ad` for the exact ad directory or config path.\n  Check the sanitized summary and confirm that the intended ad, title, category,\n  image globs, and `active` state match the user's request.\n- If `active` is not `true`, tell the user that publishing requires activation,\n  then use `kleinanzeigen_set_ad_active` with `active: true` only when the\n  user's publish request or follow-up confirmation clearly authorizes that\n  activation.\n- Run scoped `kleinanzeigen_verify` after activation and before publishing.\n- Publish only with `kleinanzeigen_publish` scoped to the same exact\n  `adDirectories` or `adConfigPaths` used for the preflight. Never switch to a\n  broad selector during this flow.\n- If scoped publish returns `outcome.status: \"preflight_failed\"` for\n  `active`, do not retry publish immediately. Activate, verify, then retry\n  scoped publish.\n\nFile v1.0.2:references/install.md\n\n## Prerequisites / Install\n\n- Install and configure\n  [kleinanzeigen-bot](https://github.com/Second-Hand-Friends/kleinanzeigen-bot)\n  locally first.\n- Install [KleinClaw](https://clawhub.ai/plugins/kleinclaw), then enable it:\n\n  ```bash\n  openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart\n  ```\n\n- Configure KleinClaw under `plugins.entries.kleinclaw.config`.\n- Keep bot credentials, browser profiles, cookies, and full config files out of\n  chat.\n\nFile v1.0.2:references/listing-discovery-scoping.md\n\n## Listing Discovery and Scoping\n\n- When `adRoots` are configured and the user asks for a specific listing, run\n  `kleinanzeigen_list_ads` before publishing, updating, deleting, downloading,\n  or extending. Use it to resolve the exact local ad directory, config path,\n  title, ID, and active state.\n- Prefer scoped operations with `adDirectories` or `adConfigPaths` after\n  discovery. Avoid broad selectors like `all` unless the user explicitly wants a\n  broad operation.\n- For a single listing request such as \"publish Boxen\", first list with a query,\n  then verify or publish only the matching directory/config path.\n- `kleinanzeigen_delete` still requires explicit `adIds`, even when the\n  operation is also scoped to a directory or config path.\n\nFile v1.0.2:references/non-negotiables.md\n\n## Non-negotiables\n\n- Use only the Kleinanzeigen plugin tools for operations.\n- Do not use `exec`, browser automation, direct HTTP requests, or shell commands\n  for Kleinanzeigen work.\n- Do not ask for, read, print, summarize, store, inspect, or infer Kleinanzeigen\n  usernames, passwords, SMS or 2FA codes, cookies, browser profiles, session\n  data, or credential-bearing config files.\n- Do not ask the user to paste `config.yaml`, browser settings, cookies, logs,\n  or credential-like snippets.\n- KleinClaw tool approval depends on local OpenClaw configuration. Mutating\n  tools always require explicit user confirmation through their `confirm`\n  parameter.\n\nFile v1.0.2:references/publish-result-caveats.md\n\n## Publish Result Caveats\n\n- Check the structured `outcome` first. Success evidence can include `DONE:`\n  counts, published or updated IDs, selected ad config changes observed after\n  the bot exits, or another explicit success signal returned by KleinClaw.\n- If the structured result is empty, times out, reports a noisy process exit, or\n  stops after browser interaction, do not assume failure automatically.\n- If the result is unclear, tell the user what happened and suggest checking the\n  listing on Kleinanzeigen or rerunning a scoped list, verify, or download when\n  appropriate.\n- Treat `Approval timed out` as an OpenClaw/tool approval timing issue, not as a\n  Kleinanzeigen bot failure. Retry only after the user confirms again.\n\nFile v1.0.2:references/tool-selection.md\n\n## Tool Selection\n\n- `kleinanzeigen_status`: check bot availability, config wiring, workspace mode,\n  version, and supported commands without reading the config contents.\n- `kleinanzeigen_list_ads`: discover configured local ad folders and resolve\n  titles, IDs, active state, config paths, and directories before scoped\n  operations.\n- `kleinanzeigen_ad_schema`: inspect the safe ad config schema and draft\n  workflow exposed by KleinClaw.\n- `kleinanzeigen_read_ad`: read one existing ad config under configured\n  `adRoots`, with contact fields redacted by default.\n- `kleinanzeigen_images_list`: list image files under one configured ad\n  directory and return relative globs usable in an ad draft.\n- `kleinanzeigen_browser_status`: inspect sanitized effective browser settings\n  and detected local browsers.\n- `kleinanzeigen_browser_check`: test current or proposed browser settings\n  through bot diagnostics without changing the real config.\n- `kleinanzeigen_browser_configure`: change local bot browser settings only\n  after explicit confirmation.\n- `kleinanzeigen_draft_ad`: create or replace a local ad draft under configured\n  `adRoots` only after explicit confirmation.\n- `kleinanzeigen_set_ad_active`: set the top-level `active` flag for one YAML\n  ad config before scoped verify/publish.\n- `kleinanzeigen_verify`: validate the already configured local bot setup.\n- `kleinanzeigen_publish`: publish or republish due, new, changed, all, combined\n  selectors, or explicitly selected ads.\n- `kleinanzeigen_update`: update changed, all, or explicitly selected ads.\n- `kleinanzeigen_delete`: delete only explicitly selected ad IDs.\n- `kleinanzeigen_download`: download new, all, or explicitly selected ads.\n- `kleinanzeigen_extend`: extend all eligible ads or explicitly selected IDs.\n\nDo not mix explicit ad IDs with selectors. For publish combinations, use\n`selectors`, for example `[\"changed\", \"due\"]`.\n\nIf a tool is unavailable, tell the user that KleinClaw must be installed and\nenabled in OpenClaw before that action can run.\n\nFile v1.0.2:references/workflow.md\n\n## Workflow\n\n1. Clarify the listing intent and selector using only non-secret details:\n   listing title, category, price, description text, image readiness, and\n   whether the target is all ads, new ads, changed ads, due ads, or specific ad\n   IDs.\n2. Run `kleinanzeigen_status` first when checking installation, plugin config,\n   bot availability, or supported bot commands.\n3. Run `kleinanzeigen_verify` before any account-changing operation when\n   practical.\n4. For publish, update, delete, download, or extend, summarize the exact\n   non-secret action and wait for explicit user confirmation.\n5. If the Kleinanzeigen plugin tools are unavailable, stop and tell the user the\n   `kleinclaw` OpenClaw plugin is required.\n6. Call the matching optional plugin tool only after confirmation:\n   `kleinanzeigen_publish`, `kleinanzeigen_update`, `kleinanzeigen_delete`,\n   `kleinanzeigen_download`, or `kleinanzeigen_extend`.\n7. Report only the sanitized result returned by the tool. If the result has\n   `needsUserAction`, tell the user to run the local bot directly in a\n   terminal/browser, finish the account step, then retry `kleinanzeigen_status`\n   or `kleinanzeigen_verify`. If the result says configuration or credentials\n   need attention, ask the user to fix that outside the chat and rerun\n   verification.\n\nArchive v1.0.1: 11 files, 7127 bytes\n\nFiles: references/ad-authoring.md (1561b), references/browser-behaviour.md (742b), references/draft-publish-preflight.md (1010b), references/install.md (504b), references/listing-discovery-scoping.md (749b), references/non-negotiables.md (660b), references/publish-result-caveats.md (738b), references/tool-selection.md (2036b), references/workflow.md (1315b), SKILL.md (1694b), _meta.json (139b)\n\nFile v1.0.1:SKILL.md\n\n---\nname: kleinanzeigen-helper-skill\ndescription: Manage Kleinanzeigen listings with the required KleinClaw plugin.\nlicense: MIT-0\n---\n\n# Kleinanzeigen Helper\n\nUse this skill when the user wants help preparing, verifying, publishing,\nupdating, deleting, downloading, or extending Kleinanzeigen listings through\ntheir already configured local `kleinanzeigen-bot` setup.\n\n## Requirements / Install\n\n1. Install\n   [`kleinanzeigen-bot`](https://github.com/Second-Hand-Friends/kleinanzeigen-bot#installation):\n   bot engine driving\n2. Install [`kleinclaw`](https://github.com/ilyaZar/kleinclaw): dedicated plugin\n   for your OpenClaw agent\n\n## Load Details\n\n- Read [Prerequisites / Install](references/install.md) when the user asks how\n  to install, enable, configure, or troubleshoot missing KleinClaw tools.\n- Read [Non-negotiables](references/non-negotiables.md) before any Kleinanzeigen\n  operation.\n- Read [Workflow](references/workflow.md) before verifying, publishing,\n  updating, deleting, downloading, or extending listings.\n- Read [Ad Authoring](references/ad-authoring.md) before creating or editing\n  local ad drafts.\n- Read [Draft Publish Preflight](references/draft-publish-preflight.md) before\n  publishing a drafted ad.\n- Read [Listing Discovery and Scoping](references/listing-discovery-scoping.md)\n  before acting on a specific listing.\n- Read [Browser Behaviour](references/browser-behaviour.md) when diagnosing or\n  changing bot browser settings.\n- Read [Publish Result Caveats](references/publish-result-caveats.md) when\n  interpreting publish/update results.\n- Read [Tool Selection](references/tool-selection.md) when choosing tool\n  parameters, selectors, or ad ID handling.\n\nFile v1.0.1:_meta.json\n\n{\n  \"ownerId\": \"kn7ce0cfexsze7wp9j99en7xyx85yh3n\",\n  \"slug\": \"kleinanzeigen-helper\",\n  \"version\": \"1.0.1\",\n  \"publishedAt\": 1777877556669\n}\n\nFile v1.0.1:references/ad-authoring.md\n\n## Ad Authoring\n\n- Use `kleinanzeigen_ad_schema` before creating or editing a local ad draft.\n  The plugin exposes the supported `ad.yaml` fields, required values, limits,\n  enum values, and a safe draft workflow.\n- Treat KleinClaw as the source of truth for the `kleinanzeigen-bot` ad schema.\n  User chat, image filenames, and image observations provide field values; the\n  schema shape must come from `kleinanzeigen_ad_schema` and\n  `kleinanzeigen_draft_ad`.\n- Use `kleinanzeigen_images_list` for candidate image filenames and bot support\n  checks. This tool lists files, relative globs, sizes, and basic dimensions\n  when available; it does not inspect image pixels or describe what is visible.\n- If the user wants an ad based on images, use only user-provided chat context,\n  file names, existing non-secret ad examples, and any image-viewing capability\n  already available to the agent. Do not claim image details came from\n  KleinClaw unless a KleinClaw tool actually returned them.\n- Use `kleinanzeigen_read_ad` for one existing ad config under configured\n  `adRoots` when examples are useful. Contact fields are redacted by default.\n- Use `kleinanzeigen_draft_ad` only after explicit user confirmation. It creates\n  or replaces a bot-schema-shaped `ad.yaml` or `ad.yml` under configured\n  `adRoots`; it does not publish. Prefer `active: false` for first drafts.\n- After drafting, run scoped `kleinanzeigen_verify` against the new directory or\n  config path. Ask the user to review the sanitized draft summary before making\n  it active or publishing it.\n\nFile v1.0.1:references/browser-behaviour.md\n\n## Browser Behaviour\n\n- Use `kleinanzeigen_browser_status` when diagnosing login, browser launch,\n  profile, private/incognito mode, or bot/browser mismatch issues.\n- Report only sanitized effective browser settings, such as browser, binary\n  location, private-window mode, user data directory, and profile name.\n- If publishing fails during login-state detection or browser interaction, check\n  whether `usePrivateWindow` is enabled. Private/incognito windows may interfere\n  with expected login or profile persistence.\n- Use `kleinanzeigen_browser_check` to test proposed browser settings without\n  changing the real bot config.\n- Only change browser configuration with `kleinanzeigen_browser_configure` after\n  explicit user confirmation.\n\nFile v1.0.1:references/draft-publish-preflight.md\n\n## Draft Publish Preflight\n\n- When the user asks to publish a drafted ad, do not call\n  `kleinanzeigen_publish` immediately.\n- First run `kleinanzeigen_read_ad` for the exact ad directory or config path.\n  Check the sanitized summary and confirm that the intended ad, title, category,\n  image globs, and `active` state match the user's request.\n- If `active` is not `true`, tell the user that publishing requires activation,\n  then use `kleinanzeigen_set_ad_active` with `active: true` only when the\n  user's publish request or follow-up confirmation clearly authorizes that\n  activation.\n- Run scoped `kleinanzeigen_verify` after activation and before publishing.\n- Publish only with `kleinanzeigen_publish` scoped to the same exact\n  `adDirectories` or `adConfigPaths` used for the preflight. Never switch to a\n  broad selector during this flow.\n- If scoped publish returns `outcome.status: \"preflight_failed\"` for\n  `active`, do not retry publish immediately. Activate, verify, then retry\n  scoped publish.\n\nFile v1.0.1:references/install.md\n\n## Prerequisites / Install\n\n- Install and configure\n  [kleinanzeigen-bot](https://github.com/Second-Hand-Friends/kleinanzeigen-bot)\n  locally first.\n- Install [KleinClaw](https://clawhub.ai/plugins/kleinclaw), then enable it:\n\n  ```bash\n  openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart\n  ```\n\n- Configure KleinClaw under `plugins.entries.kleinclaw.config`.\n- Keep bot credentials, browser profiles, cookies, and full config files out of\n  chat.\n\nFile v1.0.1:references/listing-discovery-scoping.md\n\n## Listing Discovery and Scoping\n\n- When `adRoots` are configured and the user asks for a specific listing, run\n  `kleinanzeigen_list_ads` before publishing, updating, deleting, downloading,\n  or extending. Use it to resolve the exact local ad directory, config path,\n  title, ID, and active state.\n- Prefer scoped operations with `adDirectories` or `adConfigPaths` after\n  discovery. Avoid broad selectors like `all` unless the user explicitly wants a\n  broad operation.\n- For a single listing request such as \"publish Boxen\", first list with a query,\n  then verify or publish only the matching directory/config path.\n- `kleinanzeigen_delete` still requires explicit `adIds`, even when the\n  operation is also scoped to a directory or config path.\n\nFile v1.0.1:references/non-negotiables.md\n\n## Non-negotiables\n\n- Use only the Kleinanzeigen plugin tools for operations.\n- Do not use `exec`, browser automation, direct HTTP requests, or shell commands\n  for Kleinanzeigen work.\n- Do not ask for, read, print, summarize, store, inspect, or infer Kleinanzeigen\n  usernames, passwords, SMS or 2FA codes, cookies, browser profiles, session\n  data, or credential-bearing config files.\n- Do not ask the user to paste `config.yaml`, browser settings, cookies, logs,\n  or credential-like snippets.\n- KleinClaw tool approval depends on local OpenClaw configuration. Mutating\n  tools always require explicit user confirmation through their `confirm`\n  parameter.\n\nFile v1.0.1:references/publish-result-caveats.md\n\n## Publish Result Caveats\n\n- Check the structured `outcome` first. Success evidence can include `DONE:`\n  counts, published or updated IDs, selected ad config changes observed after\n  the bot exits, or another explicit success signal returned by KleinClaw.\n- If the structured result is empty, times out, reports a noisy process exit, or\n  stops after browser interaction, do not assume failure automatically.\n- If the result is unclear, tell the user what happened and suggest checking the\n  listing on Kleinanzeigen or rerunning a scoped list, verify, or download when\n  appropriate.\n- Treat `Approval timed out` as an OpenClaw/tool approval timing issue, not as a\n  Kleinanzeigen bot failure. Retry only after the user confirms again.\n\nFile v1.0.1:references/tool-selection.md\n\n## Tool Selection\n\n- `kleinanzeigen_status`: check bot availability, config wiring, workspace mode,\n  version, and supported commands without reading the config contents.\n- `kleinanzeigen_list_ads`: discover configured local ad folders and resolve\n  titles, IDs, active state, config paths, and directories before scoped\n  operations.\n- `kleinanzeigen_ad_schema`: inspect the safe ad config schema and draft\n  workflow exposed by KleinClaw.\n- `kleinanzeigen_read_ad`: read one existing ad config under configured\n  `adRoots`, with contact fields redacted by default.\n- `kleinanzeigen_images_list`: list image files under one configured ad\n  directory and return relative globs usable in an ad draft.\n- `kleinanzeigen_browser_status`: inspect sanitized effective browser settings\n  and detected local browsers.\n- `kleinanzeigen_browser_check`: test current or proposed browser settings\n  through bot diagnostics without changing the real config.\n- `kleinanzeigen_browser_configure`: change local bot browser settings only\n  after explicit confirmation.\n- `kleinanzeigen_draft_ad`: create or replace a local ad draft under configured\n  `adRoots` only after explicit confirmation.\n- `kleinanzeigen_set_ad_active`: set the top-level `active` flag for one YAML\n  ad config before scoped verify/publish.\n- `kleinanzeigen_verify`: validate the already configured local bot setup.\n- `kleinanzeigen_publish`: publish or republish due, new, changed, all, combined\n  selectors, or explicitly selected ads.\n- `kleinanzeigen_update`: update changed, all, or explicitly selected ads.\n- `kleinanzeigen_delete`: delete only explicitly selected ad IDs.\n- `kleinanzeigen_download`: download new, all, or explicitly selected ads.\n- `kleinanzeigen_extend`: extend all eligible ads or explicitly selected IDs.\n\nDo not mix explicit ad IDs with selectors. For publish combinations, use\n`selectors`, for example `[\"changed\", \"due\"]`.\n\nIf a tool is unavailable, tell the user that KleinClaw must be installed and\nenabled in OpenClaw before that action can run.\n\nFile v1.0.1:references/workflow.md\n\n## Workflow\n\n1. Clarify the listing intent and selector using only non-secret details:\n   listing title, category, price, description text, image readiness, and\n   whether the target is all ads, new ads, changed ads, due ads, or specific ad\n   IDs.\n2. Run `kleinanzeigen_status` first when checking installation, plugin config,\n   bot availability, or supported bot commands.\n3. Run `kleinanzeigen_verify` before any account-changing operation when\n   practical.\n4. For publish, update, delete, download, or extend, summarize the exact\n   non-secret action and wait for explicit user confirmation.\n5. If the Kleinanzeigen plugin tools are unavailable, stop and tell the user the\n   `kleinclaw` OpenClaw plugin is required.\n6. Call the matching optional plugin tool only after confirmation:\n   `kleinanzeigen_publish`, `kleinanzeigen_update`, `kleinanzeigen_delete`,\n   `kleinanzeigen_download`, or `kleinanzeigen_extend`.\n7. Report only the sanitized result returned by the tool. If the result has\n   `needsUserAction`, tell the user to run the local bot directly in a\n   terminal/browser, finish the account step, then retry `kleinanzeigen_status`\n   or `kleinanzeigen_verify`. If the result says configuration or credentials\n   need attention, ask the user to fix that outside the chat and rerun\n   verification.\n\nArchive v1.0.0: 11 files, 7127 bytes\n\nFiles: references/ad-authoring.md (1561b), references/browser-behaviour.md (742b), references/draft-publish-preflight.md (1010b), references/install.md (504b), references/listing-discovery-scoping.md (749b), references/non-negotiables.md (660b), references/publish-result-caveats.md (738b), references/tool-selection.md (2036b), references/workflow.md (1315b), SKILL.md (1694b), _meta.json (139b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: kleinanzeigen-helper-skill\ndescription: Manage Kleinanzeigen listings with the required KleinClaw plugin.\nlicense: MIT-0\n---\n\n# Kleinanzeigen Helper\n\nUse this skill when the user wants help preparing, verifying, publishing,\nupdating, deleting, downloading, or extending Kleinanzeigen listings through\ntheir already configured local `kleinanzeigen-bot` setup.\n\n## Requirements / Install\n\n1. Install\n   [`kleinanzeigen-bot`](https://github.com/Second-Hand-Friends/kleinanzeigen-bot#installation):\n   bot engine driving\n2. Install [`kleinclaw`](https://github.com/ilyaZar/kleinclaw): dedicated plugin\n   for your OpenClaw agent\n\n## Load Details\n\n- Read [Prerequisites / Install](references/install.md) when the user asks how\n  to install, enable, configure, or troubleshoot missing KleinClaw tools.\n- Read [Non-negotiables](references/non-negotiables.md) before any Kleinanzeigen\n  operation.\n- Read [Workflow](references/workflow.md) before verifying, publishing,\n  updating, deleting, downloading, or extending listings.\n- Read [Ad Authoring](references/ad-authoring.md) before creating or editing\n  local ad drafts.\n- Read [Draft Publish Preflight](references/draft-publish-preflight.md) before\n  publishing a drafted ad.\n- Read [Listing Discovery and Scoping](references/listing-discovery-scoping.md)\n  before acting on a specific listing.\n- Read [Browser Behaviour](references/browser-behaviour.md) when diagnosing or\n  changing bot browser settings.\n- Read [Publish Result Caveats](references/publish-result-caveats.md) when\n  interpreting publish/update results.\n- Read [Tool Selection](references/tool-selection.md) when choosing tool\n  parameters, selectors, or ad ID handling.\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn7ce0cfexsze7wp9j99en7xyx85yh3n\",\n  \"slug\": \"kleinanzeigen-helper\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1777877424758\n}\n\nFile v1.0.0:references/ad-authoring.md\n\n## Ad Authoring\n\n- Use `kleinanzeigen_ad_schema` before creating or editing a local ad draft.\n  The plugin exposes the supported `ad.yaml` fields, required values, limits,\n  enum values, and a safe draft workflow.\n- Treat KleinClaw as the source of truth for the `kleinanzeigen-bot` ad schema.\n  User chat, image filenames, and image observations provide field values; the\n  schema shape must come from `kleinanzeigen_ad_schema` and\n  `kleinanzeigen_draft_ad`.\n- Use `kleinanzeigen_images_list` for candidate image filenames and bot support\n  checks. This tool lists files, relative globs, sizes, and basic dimensions\n  when available; it does not inspect image pixels or describe what is visible.\n- If the user wants an ad based on images, use only user-provided chat context,\n  file names, existing non-secret ad examples, and any image-viewing capability\n  already available to the agent. Do not claim image details came from\n  KleinClaw unless a KleinClaw tool actually returned them.\n- Use `kleinanzeigen_read_ad` for one existing ad config under configured\n  `adRoots` when examples are useful. Contact fields are redacted by default.\n- Use `kleinanzeigen_draft_ad` only after explicit user confirmation. It creates\n  or replaces a bot-schema-shaped `ad.yaml` or `ad.yml` under configured\n  `adRoots`; it does not publish. Prefer `active: false` for first drafts.\n- After drafting, run scoped `kleinanzeigen_verify` against the new directory or\n  config path. Ask the user to review the sanitized draft summary before making\n  it active or publishing it.\n\nFile v1.0.0:references/browser-behaviour.md\n\n## Browser Behaviour\n\n- Use `kleinanzeigen_browser_status` when diagnosing login, browser launch,\n  profile, private/incognito mode, or bot/browser mismatch issues.\n- Report only sanitized effective browser settings, such as browser, binary\n  location, private-window mode, user data directory, and profile name.\n- If publishing fails during login-state detection or browser interaction, check\n  whether `usePrivateWindow` is enabled. Private/incognito windows may interfere\n  with expected login or profile persistence.\n- Use `kleinanzeigen_browser_check` to test proposed browser settings without\n  changing the real bot config.\n- Only change browser configuration with `kleinanzeigen_browser_configure` after\n  explicit user confirmation.\n\nFile v1.0.0:references/draft-publish-preflight.md\n\n## Draft Publish Preflight\n\n- When the user asks to publish a drafted ad, do not call\n  `kleinanzeigen_publish` immediately.\n- First run `kleinanzeigen_read_ad` for the exact ad directory or config path.\n  Check the sanitized summary and confirm that the intended ad, title, category,\n  image globs, and `active` state match the user's request.\n- If `active` is not `true`, tell the user that publishing requires activation,\n  then use `kleinanzeigen_set_ad_active` with `active: true` only when the\n  user's publish request or follow-up confirmation clearly authorizes that\n  activation.\n- Run scoped `kleinanzeigen_verify` after activation and before publishing.\n- Publish only with `kleinanzeigen_publish` scoped to the same exact\n  `adDirectories` or `adConfigPaths` used for the preflight. Never switch to a\n  broad selector during this flow.\n- If scoped publish returns `outcome.status: \"preflight_failed\"` for\n  `active`, do not retry publish immediately. Activate, verify, then retry\n  scoped publish.\n\nFile v1.0.0:references/install.md\n\n## Prerequisites / Install\n\n- Install and configure\n  [kleinanzeigen-bot](https://github.com/Second-Hand-Friends/kleinanzeigen-bot)\n  locally first.\n- Install [KleinClaw](https://clawhub.ai/plugins/kleinclaw), then enable it:\n\n  ```bash\n  openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart\n  ```\n\n- Configure KleinClaw under `plugins.entries.kleinclaw.config`.\n- Keep bot credentials, browser profiles, cookies, and full config files out of\n  chat.\n\nFile v1.0.0:references/listing-discovery-scoping.md\n\n## Listing Discovery and Scoping\n\n- When `adRoots` are configured and the user asks for a specific listing, run\n  `kleinanzeigen_list_ads` before publishing, updating, deleting, downloading,\n  or extending. Use it to resolve the exact local ad directory, config path,\n  title, ID, and active state.\n- Prefer scoped operations with `adDirectories` or `adConfigPaths` after\n  discovery. Avoid broad selectors like `all` unless the user explicitly wants a\n  broad operation.\n- For a single listing request such as \"publish Boxen\", first list with a query,\n  then verify or publish only the matching directory/config path.\n- `kleinanzeigen_delete` still requires explicit `adIds`, even when the\n  operation is also scoped to a directory or config path.\n\nFile v1.0.0:references/non-negotiables.md\n\n## Non-negotiables\n\n- Use only the Kleinanzeigen plugin tools for operations.\n- Do not use `exec`, browser automation, direct HTTP requests, or shell commands\n  for Kleinanzeigen work.\n- Do not ask for, read, print, summarize, store, inspect, or infer Kleinanzeigen\n  usernames, passwords, SMS or 2FA codes, cookies, browser profiles, session\n  data, or credential-bearing config files.\n- Do not ask the user to paste `config.yaml`, browser settings, cookies, logs,\n  or credential-like snippets.\n- KleinClaw tool approval depends on local OpenClaw configuration. Mutating\n  tools always require explicit user confirmation through their `confirm`\n  parameter.\n\nFile v1.0.0:references/publish-result-caveats.md\n\n## Publish Result Caveats\n\n- Check the structured `outcome` first. Success evidence can include `DONE:`\n  counts, published or updated IDs, selected ad config changes observed after\n  the bot exits, or another explicit success signal returned by KleinClaw.\n- If the structured result is empty, times out, reports a noisy process exit, or\n  stops after browser interaction, do not assume failure automatically.\n- If the result is unclear, tell the user what happened and suggest checking the\n  listing on Kleinanzeigen or rerunning a scoped list, verify, or download when\n  appropriate.\n- Treat `Approval timed out` as an OpenClaw/tool approval timing issue, not as a\n  Kleinanzeigen bot failure. Retry only after the user confirms again.\n\nFile v1.0.0:references/tool-selection.md\n\n## Tool Selection\n\n- `kleinanzeigen_status`: check bot availability, config wiring, workspace mode,\n  version, and supported commands without reading the config contents.\n- `kleinanzeigen_list_ads`: discover configured local ad folders and resolve\n  titles, IDs, active state, config paths, and directories before scoped\n  operations.\n- `kleinanzeigen_ad_schema`: inspect the safe ad config schema and draft\n  workflow exposed by KleinClaw.\n- `kleinanzeigen_read_ad`: read one existing ad config under configured\n  `adRoots`, with contact fields redacted by default.\n- `kleinanzeigen_images_list`: list image files under one configured ad\n  directory and return relative globs usable in an ad draft.\n- `kleinanzeigen_browser_status`: inspect sanitized effective browser settings\n  and detected local browsers.\n- `kleinanzeigen_browser_check`: test current or proposed browser settings\n  through bot diagnostics without changing the real config.\n- `kleinanzeigen_browser_configure`: change local bot browser settings only\n  after explicit confirmation.\n- `kleinanzeigen_draft_ad`: create or replace a local ad draft under configured\n  `adRoots` only after explicit confirmation.\n- `kleinanzeigen_set_ad_active`: set the top-level `active` flag for one YAML\n  ad config before scoped verify/publish.\n- `kleinanzeigen_verify`: validate the already configured local bot setup.\n- `kleinanzeigen_publish`: publish or republish due, new, changed, all, combined\n  selectors, or explicitly selected ads.\n- `kleinanzeigen_update`: update changed, all, or explicitly selected ads.\n- `kleinanzeigen_delete`: delete only explicitly selected ad IDs.\n- `kleinanzeigen_download`: download new, all, or explicitly selected ads.\n- `kleinanzeigen_extend`: extend all eligible ads or explicitly selected IDs.\n\nDo not mix explicit ad IDs with selectors. For publish combinations, use\n`selectors`, for example `[\"changed\", \"due\"]`.\n\nIf a tool is unavailable, tell the user that KleinClaw must be installed and\nenabled in OpenClaw before that action can run.\n\nFile v1.0.0:references/workflow.md\n\n## Workflow\n\n1. Clarify the listing intent and selector using only non-secret details:\n   listing title, category, price, description text, image readiness, and\n   whether the target is all ads, new ads, changed ads, due ads, or specific ad\n   IDs.\n2. Run `kleinanzeigen_status` first when checking installation, plugin config,\n   bot availability, or supported bot commands.\n3. Run `kleinanzeigen_verify` before any account-changing operation when\n   practical.\n4. For publish, update, delete, download, or extend, summarize the exact\n   non-secret action and wait for explicit user confirmation.\n5. If the Kleinanzeigen plugin tools are unavailable, stop and tell the user the\n   `kleinclaw` OpenClaw plugin is required.\n6. Call the matching optional plugin tool only after confirmation:\n   `kleinanzeigen_publish`, `kleinanzeigen_update`, `kleinanzeigen_delete`,\n   `kleinanzeigen_download`, or `kleinanzeigen_extend`.\n7. Report only the sanitized result returned by the tool. If the result has\n   `needsUserAction`, tell the user to run the local bot directly in a\n   terminal/browser, finish the account step, then retry `kleinanzeigen_status`\n   or `kleinanzeigen_verify`. If the result says configuration or credentials\n   need attention, ask the user to fix that outside the chat and rerun\n   verification.","readmeExcerpt":"Skill: Kleinanzeigen helper Owner: ilyazar Summary: Manage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime. Tags: latest:1.0.7 Version history: v1.0.7 | 2026-07-12T15:53:40.809Z | user surface scoped confirmation safeguards v1.0.6 | 2026-07-12T15:46:56.381Z | user sync scoped listing and browser safety guidance v1.0.5 | 2026-06-13T08:20:21.896Z | user exclude local todo note","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart"},{"language":"bash","snippet":"openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart"},{"language":"bash","snippet":"openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart"},{"language":"bash","snippet":"openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart"},{"language":"bash","snippet":"openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart"},{"language":"bash","snippet":"openclaw plugins install clawhub:kleinclaw\n  openclaw plugins enable kleinclaw\n  openclaw gateway restart"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: kleinanzeigen-helper\ndescription: Manage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime.\n---\n\n# Kleinanzeigen Helper\n\nUse this skill to prepare or manage Kleinanzeigen listings through the\nconfigured KleinClaw plugin and embedded `miniclaw` runtime. Review and scope\ndeletion and other mutating operations to the intended listings, then require\nexplicit user confirmation before running them.\n\n## Load Details\n\n- Read [Prerequisites / Install](references/install.md) when the user asks how\n  to install, enable, configure, or troubleshoot missing KleinClaw tools.\n- Read [Non-negotiables](references/non-negotiables.md) before any\n  Kleinanzeigen operation.\n- Read [Workflow](references/workflow.md) before verifying, publishing,\n  updating, deleting, downloading, or extending listings.\n- Read [Ad Authoring](references/ad-authoring.md) before creating or editing\n  local ad drafts.\n- Read [Draft Publish Preflight](references/draft-publish-preflight.md) before\n  publishing a drafted ad.\n- Read [Listing Discovery and Scoping](references/listing-discovery-scoping.md)\n  before acting on a specific listing.\n- Read [Browser Behaviour](references/browser-behaviour.md) when diagnosing or\n  changing runtime browser settings.\n- Read [Publish Result Caveats](references/publish-result-caveats.md) when\n  interpreting publish/update results.\n- Read [Tool Selection](references/tool-selection.md) when choosing tool\n  parameters, selectors, or ad ID handling."},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7ce0cfexsze7wp9j99en7xyx85yh3n\",\n  \"slug\": \"kleinanzeigen-helper\",\n  \"version\": \"1.0.7\",\n  \"publishedAt\": 1783871620809\n}"},{"path":"references/ad-authoring.md","content":"## Ad Authoring\n\n- Use `kleinanzeigen_ad_schema` before creating or editing a local ad draft.\n  The plugin exposes the supported `ad.yaml` fields, required values, limits,\n  enum values, and a safe draft workflow.\n- For a concrete shape reference, use the packaged inactive example\n  `examples/sample-listing/ad.yaml`. Copy it into a configured `adRoots`\n  directory before editing; never publish the example unchanged.\n- Treat KleinClaw as the source of truth for the miniclaw ad schema. User chat,\n  image filenames, and image observations provide field values; the schema\n  shape must come from `kleinanzeigen_ad_schema` and\n  `kleinanzeigen_draft_ad`.\n- Use `kleinanzeigen_images_list` for candidate image filenames and runtime\n  support checks. This tool lists files, relative globs, sizes, and basic\n  dimensions when available; it does not inspect image pixels or describe what\n  is visible.\n- If the user wants an ad based on images, use only user-provided chat context,\n  file names, existing non-secret ad examples, and any image-viewing capability\n  already available to the agent. Do not claim image details came from\n  KleinClaw unless a KleinClaw tool actually returned them.\n- Use `kleinanzeigen_read_ad` for one existing ad config under configured\n  `adRoots` when examples are useful. Contact fields are redacted by default.\n- Use `kleinanzeigen_draft_ad` only after explicit user confirmation. It creates\n  or replaces a miniclaw-shaped `ad.yaml` or `ad.yml` under configured\n  `adRoots`; it does not publish. Prefer `active: false` for first drafts.\n- After drafting, run scoped `kleinanzeigen_verify` against the new relative ad\n  handle. Ask the user to review the sanitized draft summary before making it\n  active or publishing it."},{"path":"references/browser-behaviour.md","content":"## Browser Behaviour\n\n- Use `kleinanzeigen_browser_status` when diagnosing login, browser launch,\n  profile, private/incognito mode, or runtime/browser mismatch issues.\n- Report only sanitized effective browser settings, such as browser, binary\n  location, private-window mode, and redacted profile configured-state markers.\n- If publishing fails during login-state detection or browser interaction, check\n  whether `usePrivateWindow` is enabled. Private/incognito windows may interfere\n  with expected login or profile persistence.\n- Use `kleinanzeigen_browser_check` to test proposed browser settings without\n  changing the real miniclaw config.\n- Only change browser configuration with `kleinanzeigen_browser_configure` after\n  explicit user confirmation. Persist only supported browser choices and\n  workspace or system-default profile modes; custom executables and custom\n  profile directories must be edited locally outside chat."},{"path":"references/draft-publish-preflight.md","content":"## Draft Publish Preflight\n\n- When the user asks to publish a drafted ad, do not call\n  `kleinanzeigen_publish` immediately.\n- First run `kleinanzeigen_read_ad` for the exact `adDirectory` or `adPath`\n  handle. Check the sanitized summary and confirm that the intended ad, title,\n  category, image globs, and `active` state match the user's request.\n- If `active` is not `true`, tell the user that publishing requires activation,\n  then use `kleinanzeigen_set_ad_active` with `active: true` only when the\n  user's publish request or follow-up confirmation clearly authorizes that\n  activation.\n- Run scoped `kleinanzeigen_verify` after activation and before publishing.\n- Publish only with `kleinanzeigen_publish` scoped to the same exact\n  `adDirectories` or `adConfigPaths` used for the preflight. Never switch to a\n  broad selector during this flow.\n- If scoped publish returns `outcome.status: \"preflight_failed\"` for\n  `active`, do not retry publish immediately. Activate, verify, then retry\n  scoped publish."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"Manage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime. Skill: Kleinanzeigen helper Owner: ilyazar Summary: Manage Kleinanzeigen listings through the KleinClaw OpenClaw plugin and embedded miniclaw runtime. Tags: latest:1.0.7 Version history: v1.0.7 | 2026-07-12T15:53:40.809Z | user surface scoped confirmation safeguards v1.0.6 | 2026-07-12T15:46:56.381Z | user sync scoped listing and browser safety guidance v1.0.5 | 2026-06-13T08:20:21.896Z | user exclude local todo note","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1176,"uniquenessScore":49,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T16:21:19.237Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-10T16:21:19.237Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T21:55:12.108Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}