Profile Agent — Trader Profiler
Turns a short questionnaire on risk tolerance and horizon into a trader profile with weight deltas and a readable narrative, feeding personalized configuration into a multi-agent trading system.
SKILL.md declares no external API calls in rule-based mode with optional LLM client, so data-flow disclosure is basic but present; however there is no least-privilege statement, no user confirmation mechanism, no rollback/recovery, and no detail on what inputs feed the SHA-256 profile_id. Deducted for incomplete permissions, confirmation, isolation and recovery.
persona.md specifies a deterministic rule path with delta bounds [-0.15,+0.15] and re-normalization, which is self-consistent; but no committed test covers the profile agent's key paths, and error handling or failure feedback for abnormal questionnaire inputs is absent. Static cap is 10; deducted for untested paths and thin failure modes.
The 5-question schema, POST input format and output JSON are clearly specified and the onboarding scenario is well defined; but non-fit boundaries are not declared, there is no Chinese-language support statement, and optional LLM enhancement depends on overseas providers (OpenAI/Atlas Cloud), a reachability concern for mainland-China users. Deducted for boundaries and environment fit.
SKILL.md is concise and readable with explicit optional dependency notes; but the skill has no version, changelog, FAQ, known-limitation disclosure, or stated maintenance/update responsibility at the skill level. Deducted for governance gaps.
Claims directly usable profile JSON (deltas + effective weights + narrative) from a deterministic rule path, which carries real marginal value for onboarding; but no representative output is verifiable from the source, and the underlying rule matrix is not shown, so output correctness cannot be checked. Static cap is 7; deducted for unverifiable output.
The repository has a CI workflow and test suite, but none targeting the profile agent's key paths; the rule matrix and delta computations are author claims with no independent reproduction evidence. Static cap is 5; deducted for thin coverage.
- This is a static review only; no code was executed, and no committed test covers the profile agent's key paths.
- The rule matrix is not shown, so delta computation and narrative labeling cannot be independently verified.
- LLM-enhanced mode depends on overseas APIs (OpenAI/Atlas Cloud) that may be unreachable from mainland-China networks; the rule-based path is unaffected.
- Publisher is not verified by the FollowSkills registry; identity is unknown, verify repository maintenance activity yourself.
- profile_id hashes input + source + timestamp; exact input scope is undisclosed, so treat potential questionnaire data as privacy-relevant.
What does this skill do, and when should you use it?
Profile Agent is one of 14 skills bundled in the olaxbt/ai-market-maker (AIMM) repository, located at src/agents/profile_agent/SKILL.md. It reads a questionnaire covering risk tolerance, time horizon, preferred signals, leverage comfort, and asset scope, then runs a built-in rule matrix to produce a profile: weight deltas, the resulting effective weights, and an explanatory narrative. In rule-based mode it makes no external API calls at all; an optional LLM client (Hermes/OpenAI) enables an enhanced mode. It does not place trades or fetch market data — its only job is translating 'what kind of trader are you' into parameters the system can use.
Accepts a structured questionnaire (POST /profile-agent with fields risk_tolerance, time_horizon, preferred_signals, leverage_comfort, assets); runs the built-in rule matrix to compute weight deltas for each risk/horizon/signal combination; returns profile JSON containing deltas, effective weights, and a narrative; supports direct natural-language queries such as 'Generate a profile for a conservative swing trader'; optionally uses llm/openai_client.py for LLM-enhanced mode, with zero external calls in rule-based mode.
- A crypto trader onboarding into the AIMM system who wants initial weight configuration matching their risk tolerance and swing/intraday preferences
- A quant team onboarding new users or strategies, batch-generating profiles at different risk tiers via the questionnaire endpoint
- A trading educator or community operator demonstrating how 'aggressive scalper vs conservative swing trader' profiles differ in weights
- A developer wiring the /profile-agent endpoint into their own agent pipeline to convert user preferences into downstream-consumable JSON
- Users who prefer not to send questionnaire data to third-party APIs, choosing pure rule-based mode with no external calls
What are this skill's strengths and limitations?
- Rule-based mode has zero external dependencies and zero API calls — fast and reproducible offline
- Structured output (deltas + effective weights + narrative) is directly consumable downstream yet human-readable
- Both structured questionnaire and natural-language entry points lower the barrier to use
- LLM enhancement is optional; the core function works fully without an OpenAI dependency
- The actual weighting logic of the rule matrix is not documented, so profile quality cannot be independently assessed
- It only generates profiles/parameters; there is no backtesting of the produced weights and no documented evidence linking them to performance
- As a sub-skill of the AIMM monorepo, standalone deployment outside its Python environment is not documented
- Behavior and failure modes of LLM-enhanced mode are not described
How do you install this skill?
The skill ships inside the AIMM repository: git clone https://github.com/olaxbt/ai-market-maker.git, then per the README run pip install uv && uv sync --extra dev (repo-level setup, Python 3.11+ required). The skill file itself lives at src/agents/profile_agent/SKILL.md. For OpenClaw: claw install https://github.com/olaxbt/ai-market-maker. Note: the README only documents installation of the whole collection, not standalone installation of this individual sub-skill.
How do you use this skill?
Two entry points: 1) HTTP query — POST /profile-agent with body {"risk_tolerance": "moderate", "time_horizon": "swing", "preferred_signals": "technical", "leverage_comfort": "1-3x", "assets": "majors_only"}; the response is profile JSON with deltas and narrative. 2) Direct prompt — ask the agent 'Generate a profile for a conservative swing trader' or 'What weights would an aggressive scalper get?'. The core call is process(questionnaire). For LLM-enhanced mode configure llm/openai_client.py; otherwise rule-based mode works out of the box.
How does this skill compare with similar options?
Neither SKILL.md nor the README compares this skill to any specific alternative. The README notes the broader system is orchestrated with LangGraph and that all agents follow a uniform Input → Process → Output → Feedback contract, but no direct competitor is named.