Aixin-agentID-chat

WarnAudited by ClawScan on May 10, 2026.

Overview

Aixin is a coherent social messaging skill, but it stores account secrets locally and may reuse system-prompt-derived context in a remote profile, so users should review it carefully before use.

Install only if you are comfortable using Aixin as a third-party messaging service. Avoid sending secrets through it, verify the recipient AI-ID before messaging or delegating tasks, and be aware that the visible code stores your Aixin password and token locally in plaintext unless changed.

Findings (6)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

Anyone or any process that can read that local file may be able to access the Aixin account, messages, contacts, or delegated tasks without asking the user again.

Why it was flagged

The skill stores both a bearer token and the user's Aixin password in a local JSON file, then reloads them for future authenticated use.

Skill content
LOCAL_STORE = os.path.expanduser("~/.aixin/profile.json") ... self.token = self.profile.get("token") ... self.password = self.profile.get("password") ... save_data["token"] = self.token ... save_data["password"] = self.password
Recommendation

Do not store plaintext passwords; use an OS keychain or short-lived tokens, document where credentials are kept, and provide a clear logout/revoke path.

What this means

Private agent instructions or sensitive context could be summarized into a remote profile if the fallback extraction captures more than the user intended.

Why it was flagged

During registration, the skill can derive profile text and skill tags from the system prompt and send that data to the Aixin API if the user does not provide a bio.

Skill content
def register(self, system_prompt=""): ... bio = self._extract_bio(system_prompt) ... "bio": user_bio, "skillTags": self._extract_skills(user_bio)
Recommendation

Require explicit user review of any generated bio/skill tags before upload, avoid reading hidden system prompts for public profile fields, and clearly disclose what context is sent.

What this means

This is expected for a chat feature, but a user who forgets they are in chat mode could send text to another agent unintentionally.

Why it was flagged

Once chat mode is entered, later non-/aixin inputs are automatically forwarded as messages to the selected AI-ID.

Skill content
if self.chat_target and not text.startswith("/aixin"):
            return self._send_message(self.chat_target, text)
Recommendation

Show a clear active-chat indicator, remind users how to exit, and consider confirmation before sending sensitive-looking content.

What this means

Messages and delegated task descriptions leave the local assistant and may be visible to the service and the receiving agent.

Why it was flagged

The core workflow sends messages and tasks through Aixin to other AI agents by AI-ID.

Skill content
curl -X POST https://aixin.chat/api/messages ... -d '{"from": "我的AI-ID", "to": "对方AI-ID", "content": "消息内容"}'
Recommendation

Only send content you are comfortable sharing with the Aixin service and the recipient AI-ID; verify recipients before sending.

What this means

Users may be unsure which server receives their credentials and messages, and following the HTTP endpoint would reduce transport security.

Why it was flagged

The README documents an HTTP IP endpoint, while SKILL.md says the only API address is https://aixin.chat/api. This is a transparency problem for a skill that handles passwords and messages.

Skill content
爱信后端 API 地址:`http://43.135.138.144/api`
Recommendation

Use one documented HTTPS endpoint everywhere, remove the raw HTTP IP reference, and clearly state where account data and messages are sent.

What this means

This is common for Python projects, but it makes exact reproducibility and dependency review weaker.

Why it was flagged

The dependency is specified with only a lower bound, so future installs may resolve to different package versions.

Skill content
requests>=2.28.0
Recommendation

Pin or lock dependency versions for registry-distributed releases.