AI Plugins
Xilancer ships three AI plugins. They overlap, but they solve different problems. You can run one, two, or all three; they register on different hooks and do not require each other.
Which one do I need?
| I want... | Use |
|---|---|
| Better proposal and service writing, with no API key | AI Toolkit |
| Smarter search ranking, recommendations, and related listings | AI Engine |
| Multi-provider generation across admin and frontend, with cost tracking | AI Power |
| All of the above | All three, with clear priority rules |
A common setup is AI Engine for ranking, AI Toolkit for drafting, and AI Power for admin content and moderation.
AI Toolkit
What AI Toolkit does
AI Toolkit is deterministic first. It produces useful output with plain PHP rules, then optionally polishes with a language model. If no provider is configured, it still works.
Features:
- Offer and service drafting.
- Profile review with a score and suggestions.
- LinkedIn profile mapping.
- Search reranking.
- Inline assist boxes on create forms.
AI Toolkit hooks and slots
| Type | Name |
|---|---|
| Filter | ai.suggest.offer |
| Filter | ai.suggest.project |
| Filter | ai.suggest.profile |
| Filter | search.jobs.results |
| Filter | search.projects.results |
| Slot | job.ai_assist |
| Slot | project.ai_assist |
| Slot | offer.ai_assist |
| Slot | profile.completion |
| Registry | auth.provider (linkedin) |
AI Toolkit providers
- OpenAI-compatible endpoints.
- DeepSeek.
- Ollama (local).
Secrets are masked in the CLI and never logged.
When to use AI Toolkit
Use AI Toolkit when you want better writing and a profile score without sending every request to a paid provider. The deterministic layer is the default; the LLM is an enhancement.
AI Engine
What AI Engine does
AI Engine parses intent, scores candidates, and ranks results. It is built for discovery, not writing.
Features:
- Intent parsing from a query or a job description.
- Scoring against skills, category, level, budget, and recency.
- Ranking for jobs, services, and talents.
- Recommendations for clients and freelancers.
- Related listings.
- Guided CTAs on listing pages.
AI Engine hooks and slots
| Type | Name |
|---|---|
| Filter | search.jobs.results |
| Filter | search.projects.results |
| Filter | search.talents.results |
| Filter | job.recommended_freelancers |
| Filter | client.recommended_freelancers |
| Filter | freelancer.recommended_jobs |
| Filter | project.related.results |
| Filter | job.related.results |
| Slot | projects.recommendation_cta |
| Slot | jobs.recommendation_cta |
| Slot | talents.recommendation_cta |
No API key required
AI Engine ranks locally. An LLM is optional and only improves the intent parse. This makes it the cheapest way to add relevance to search.
When to use AI Engine
Use AI Engine when search feels generic, when clients cannot find the right freelancers, or when related listings are irrelevant.
AI Power
What AI Power does
AI Power is the full generation suite. It connects to multiple providers and exposes tools across the admin and frontend.
Features:
- Multi-provider text generation.
- Admin text presets by input type and category.
- Content writer.
- SEO title and description generation.
- Moderation.
- Semantic search.
- Translation.
- Image generation.
- Usage and cost tracking.
AI Power hooks and slots
| Type | Name |
|---|---|
| Filter | ai.suggest.offer |
| Filter | ai.suggest.project |
| Filter | ai.suggest.profile |
| Filter | search.jobs.results |
| Filter | search.projects.results |
| Filter | security.scan |
| Slot | job.ai_assist |
| Slot | project.ai_assist |
| Slot | profile.completion |
| Slot | admin.assets |
AI Power providers
- OpenAI.
- Google Gemini.
- Anthropic.
- DeepSeek.
- Ollama.
Tables and settings
ai_prompts- reusable prompts and presets.ai_usages- usage and cost records.aipower_settings- provider keys, model choice, limits.
Permission: aipower-manage.
Guardrails
AI Power is strict about public input:
- Rate limit per user and per IP.
- Input length cap.
- Output length cap matched to the field or content type.
- Contact-detail filtering.
- Admin-only routes for provider keys.
- Usage records for cost review.
These guardrails exist because a public AI box is an abuse target. Do not remove them.
When to use AI Power
Use AI Power when you need generation beyond drafting: admin content, SEO copy, translation, moderation, or images. It costs money per call, so set limits before enabling it for everyone.
Running more than one
Because all three can register the same hooks, priority matters. Lower runs first.
Recommended priority:
| Hook | First | Then |
|---|---|---|
search.*.results | AI Engine (relevance) | AI Toolkit (rerank) or AI Power (semantic) |
ai.suggest.* | AI Toolkit (deterministic) | AI Power (LLM polish) |
security.scan | Security Manage (rules) | AI Power (model) |
If two plugins both replace the result set, the last one wins. Pick one owner per hook and let the other act as a fallback.
Configuration
Configuring AI Toolkit
- Open Plugin Manage and activate
ai-toolkit. - Open its settings.
- Choose a provider or leave it on deterministic.
- If using a provider, enter the endpoint, model, and key.
- Run a test from the CLI.
Configuring AI Engine
- Activate
aiengine. - Choose the intent mode: local or LLM-assisted.
- Set the ranking weights if the settings page exposes them.
- Test a search with a vague query.
- Check the related listings on three services.
Configuring AI Power
- Activate
aipower. - Open AI Power → AI Settings.
- Add one provider and one model.
- Set input and output caps.
- Set the rate limit.
- Create a text preset for the content types you use.
- Run a generation from an admin form.
- Check Usage & Cost after a day.
Cost control
| Control | Where | Effect |
|---|---|---|
| Provider choice | Settings | Local Ollama is free but slower |
| Model choice | Settings | Smaller models cost less |
| Input cap | Guardrails | Prevents long prompts |
| Output cap | Guardrails | Prevents long generations |
| Rate limit | Guardrails | Prevents abuse |
| Usage log | ai_usages | Shows what is spending |
| Feature toggles | Settings | Turn off images or translation first |
Start with the cheapest model that produces acceptable output. Measure before expanding.
Privacy
- Deterministic AI Toolkit and AI Engine do not send data anywhere.
- Provider-backed generation sends the prompt and any included text to the provider.
- Do not send personal data, private messages, or NDA content to a provider without a lawful basis.
- Review the provider's retention and training policy.
- If you need full privacy, use Ollama on your own hardware.
Failure behavior
- If a provider is down, AI Toolkit falls back to deterministic output.
- AI Engine falls back to its local scorer.
- AI Power reports the error and returns no generated text; it does not block the underlying form.
- A missing key disables the provider, not the plugin.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| Generate returns 401 | Wrong key or admin session expired | Re-enter the key; refresh the admin session |
| Output is empty | Model returned only reasoning tokens | Switch model or disable thinking mode |
| Output is cut off | Output cap too low | Raise the cap for that content type |
| Slow responses | Local model or large prompt | Use a smaller model; cap input |
| Costs are high | Broad feature access | Lower rate limits; restrict to admins |
| Search ranking looks random | Weights or intent mode misconfigured | Reset weights; test with a clear query |
| Assist box missing | Slot not present in the theme | Check the theme version; use a supported slot |
Last updated: October 21, 2026

