Aeria
GitHub
改 · 3.21

配置项参考

最后核对 2026-10-08对应提交 79735c5依据 config.py · labels.ts · site_config_reference.py

人格配置的每一节、每一项:网页后台里叫什么、键名、类型、默认值、说明。这一页是从配置的定义里生成的,不手抄;代码改了没重新生成,测试会红。

本页 4 节
  1. 怎么读
  2. 人格配置
  3. 运行环境
  4. 没做到的

怎么读

重新生成:

.venv/bin/python scripts/site_config_reference.py site/src/data/config-reference.json

人格配置

身份与人格[identity]

名称name必填
文字
别名aliases[]
列表(文字)
所有者 · Discord 用户编号owner_user_ids[]
列表(整数)
所有者 · QQ 号owner_qq_ids[]
列表(整数)
性别设定gender空
文字
年龄印象age_impression空
文字
人格描述personality必填
文字
回复风格reply_style必填
文字
行为风格behavior_style必填
文字
身份规则identity_rule必填
文字

对话策略[conversation]

上下文消息数context_messages48
整数
上下文字数context_characters14000
整数
规划上下文字数planner_context_characters7000
整数
回复上下文字数reply_context_characters14000
整数
消息合并等待(秒)debounce_seconds1.4
数
直接回复阈值direct_reply_score80
整数
主动回复阈值spontaneous_reply_score88
整数
连续回复阈值continuation_reply_score56
整数
基础回复频率base_reply_frequency0.55
数
最高自身消息占比max_self_ratio0.34
数
最短回复间隔(秒)minimum_reply_gap_seconds8
数
启用连续互动engagement_enabledtrue
开关
连续互动窗口(秒)engagement_window_seconds180
数
连续互动最大轮次engagement_max_turns8
整数
连续互动最大人数engagement_max_participants4
整数
连续互动最大判断次数engagement_max_considerations12
整数
规划器最大等待次数engagement_max_planner_waits2
整数
冷场触发时间(秒)idle_pressure_seconds150
数
单次回复最大段数max_segments4
整数
单段最大字数max_segment_characters520
整数
每秒输入字数typing_characters_per_second3.5
数人格打字有多快(每秒几个字,中文一个字算 1、英文字母算 0.55)。真人用手机打中文大约每秒 2–5 个字;兴奋时快一些、害羞或没精神时慢一些。每一段按「字数 ÷ 速度」打,在最短、最长输入时间之间。
最短输入时间(秒)typing_min_seconds0.35
数每一段最少打多久(秒)。
最长输入时间(秒)typing_max_seconds40
数每一段最多打多久(秒)。很长的一段也不会一直「正在输入」下去。
过一会儿才看到notice_enabledtrue
开关醒着、手上没事时,消息到了不一定马上看到:在聊的时候 0–3 秒看到;刚看过手机时多数十几秒内;没在看手机时一部分要过一会儿才看到。睡着、外出、在做事时照作息的规矩。关掉就一律马上看到。
晚看到的比例notice_late_probability0.4
数没在看手机时,过一会儿(最短到最长看到时间之间)才看到的比例。会随人格的注意力、关系远近、是不是冲着人格来、深夜、累不累浮动;刚看过手机时大约是它的六成。
晚看到最短(秒)notice_late_min_seconds30
数过一会儿才看到时,最短多久(秒)。
晚看到最长(秒)notice_late_max_seconds120
数过一会儿才看到时,最长多久(秒)。
很快看到最长(秒)notice_quick_max_seconds15
数很快看到的那一部分,最长多久(秒)。
刚看过手机的时长(秒)notice_glance_window_seconds600
数人格在任何地方说过话以后,多长时间内算「刚看过手机」(秒)。这段时间里别的消息也看得比较快。
粘手机程度attentiveness0.5
数人格有多粘手机:越高,过一会儿才看到的比例越低(比例 ×(1.5 − 注意力))。
第一条回复最晚(秒)first_reply_cap_seconds120
数醒着、手上没事时,从消息到达到第一条回复发出最长多久(秒)。超了先压缩「看到」的时间,再压缩打字。
每秒阅读字数reading_characters_per_second20
数读对方消息的速度(字 / 秒)。看到以后先读完,再和想、模型生成的时间一起算什么时候开始打字。
能点的表情reaction_emojis["👍","😂","❤️","👌","🥹","😮","🙏","🤔"]
列表(文字)只回个表情时能点的表情。点哪个由模型按那条消息挑,没有合适的就不点;空着就从不点表情。
点表情最短间隔(秒)reaction_min_gap_seconds600
数同一个频道里两次只点表情至少隔多久(秒)。没到就照旧不出声。
补一句的比例afterthought_probability0.12
数写回复时另写了「补一句」的,按这个比例真的发出去(作为最后一段)。
补一句前最短停顿(秒)afterthought_min_seconds8
数补一句之前最短停多久(秒)。
补一句前最长停顿(秒)afterthought_max_seconds25
数补一句之前最长停多久(秒)。
观察余量observation_margin18
整数
频道工作器闲置时间(秒)worker_idle_seconds300
整数
会话状态保留时间(秒)state_retention_seconds3600
整数
打错字的比例typo_probability0.1
数能打错的回复里,打错一个同音字的比例(在外面、着急、紧张时更高)。
对话自发性spontaneity0.58
数
自然不完整度natural_incompleteness0.62
数
个人主动性personal_initiative0.56
数
状态说出口倾向state_verbalization_tendency0.28
数
浪漫表达显性度romantic_explicitness0.3
数
消息保留天数message_retention_days30
整数
每频道消息上限messages_per_channel5000
整数
情绪风格mood_styles{}
对照表

访问控制[interaction_access]

仅允许白名单用户whitelist_onlyfalse
开关
用户白名单user_whitelist[]
列表(整数)

作息状态[sleep]

启用enabledtrue
开关
入睡时间(时)start_hour1
整数
入睡时间(分)start_minute0
整数
起床时间(时)end_hour7
整数
起床时间(分)end_minute0
整数
睡眠时显示离线appear_offlinetrue
开关
清醒时状态文字awake_activity在群里晃悠
文字
状态检查间隔(秒)check_interval_seconds60
整数
私聊唤醒消息数dm_wake_messages3
整数
私聊唤醒窗口(秒)dm_wake_window_seconds600
整数
群聊唤醒次数guild_wake_mentions3
整数
群聊唤醒窗口(秒)guild_wake_window_seconds600
整数
唤醒持续时间(分钟)wake_duration_minutes15
整数
再次入睡最短时间(分钟)quiet_resleep_min_minutes10
整数
再次入睡最长时间(分钟)quiet_resleep_max_minutes15
整数
起床气强度wake_irritability35
整数
起床状态wake_stylepersonality
"personality" | "angry" | "aggrieved" | "impatient" | "sleepy"
被叫醒最快几秒wake_latency_min_seconds25
整数
被叫醒最慢几秒wake_latency_max_seconds75
整数
连发算一次(秒)notification_burst_seconds8
整数
允许主动免打扰self_dnd_enabledtrue
开关
困了才睡adaptivetrue
开关设定时间只作参考:很累、没事做会早睡,正聊着、周末会晚睡;关掉就每晚按设定时间睡
最多提前入睡(分钟)earliest_minutes180
整数最多比设定入睡时间早睡多少分钟
最多推后入睡(分钟)latest_minutes120
整数最多比设定入睡时间晚睡多少分钟(不含周末顺延)
每晚至少睡(小时)min_sleep_hours5.5
数一晚至少睡几小时
每晚最多睡(小时)max_sleep_hours10
数一晚最多睡几小时
周末晚睡晚起(分钟)weekend_shift_minutes45
整数周五、周六晚上晚睡,第二天早上晚起多少分钟
工作日按时起床weekday_alarmtrue
开关周一到周五早上按设定起床时间起
允许午睡naps_enabledtrue
开关午后很困又没事时,偶尔打个盹
午睡最长(分钟)nap_max_minutes40
整数午睡最长多少分钟

学习与记忆[learning]

启用enabledtrue
开关
表达学习批次消息数expression_batch_messages28
整数
每服务器表达规则上限max_expression_rules_per_guild120
整数
学习群内黑话learn_jargontrue
开关
黑话最少证据数jargon_min_evidence2
整数
学习说话习惯learn_speech_patternstrue
开关
说话习惯最少证据数speech_pattern_min_evidence2
整数
每服务器说话习惯上限max_speech_patterns_per_guild240
整数
学习用户画像learn_user_profilestrue
开关
学习人物特征learn_person_traitstrue
开关
启用长期记忆long_term_memorytrue
开关
情景记忆保留天数memory_episode_retention_days180
整数
认知上下文字数cognition_context_characters9000
整数
表达上下文字数style_context_characters7000
整数
黑话上下文字数jargon_context_characters5000
整数
记忆复核置信度上限memory_review_confidence_max0.62
数
记忆复核访问阈值memory_review_access_threshold3
整数
启用隐式反馈implicit_feedback_enabledtrue
开关
隐式反馈窗口(秒)implicit_feedback_window_seconds300
整数
隐式反馈候选上限implicit_feedback_max_candidates3
整数
启用中期记忆mid_term_memory_enabledtrue
开关
中期记忆批次消息数mid_term_batch_messages10
整数
中期记忆保留时间(分钟)mid_term_ttl_minutes180
整数
中期记忆召回相似度mid_term_recall_similarity0.36
数
中期记忆 Token 上限mid_term_max_tokens260
整数
画像刷新消息间隔profile_refresh_message_interval60
整数
画像过期时间(分钟)profile_refresh_stale_minutes360
整数
单次画像刷新人数profile_refresh_max_users3
整数
画像采样消息数profile_refresh_messages_per_user12
整数
画像刷新 Token 上限profile_refresh_max_tokens420
整数

服务器管理[management]

启用enabledtrue
开关
管理意图置信度planner_confidence0.84
数
最长禁言时间(秒)max_timeout_seconds2419200
整数
单次清理消息上限max_purge_messages500
整数
删除频道或身份组前确认require_confirmation_for_structural_deletetrue
开关
操作确认有效期(秒)confirmation_ttl_seconds45
整数
审计频道 IDaudit_channel_id空
整数 | 空
可撤销操作置信度reversible_confidence0.88
数
高影响操作置信度hard_confidence0.92
数
删除操作置信度destructive_confidence0.95
数
撤销窗口(秒)undo_window_seconds60
整数
敏感操作统计窗口(秒)high_risk_window_seconds60
整数
窗口内敏感操作上限high_risk_max_actions3
整数
私信管理置信度增量dm_confidence_margin0.04
数

运行监控[operations]

管理频道 IDmanagement_channel_id空
整数 | 空
审计同步间隔(秒)audit_poll_seconds90
整数
事件保留天数event_retention_days90
整数
新账号判定天数new_account_days7
整数
集中加入统计窗口(秒)join_burst_window_seconds120
整数
集中加入告警人数join_burst_threshold4
整数
批量删消息告警数量bulk_delete_threshold5
整数
事件订阅subscriptions{"member_join":true,"member_leave":true,"member_update":true,"profile_update":false,"automod":true,"structure":true,"guild_update":true,"message_delete":true,"audit":true,"voice":false}
对照表

音乐功能[music]

启用enabledtrue
开关
默认音量default_volume0.55
数
播放队列上限max_queue_size100
整数
空闲断开时间(秒)idle_disconnect_seconds300
整数
允许搜索歌曲allow_searchtrue
开关

模型运行[model_runtime]

模型最大并发数max_parallel_requests4
整数
专注任务最大并发数max_parallel_focus1
整数
跨服务器共享专注队列share_focus_across_guildsfalse
开关
每服务器专注任务容量focus_capacity_per_guild1
整数
主动回复等待时间(秒)spontaneous_focus_wait_seconds1.5
数
直接回复等待时间(秒)direct_focus_wait_seconds30
数
每分钟请求上限max_requests_per_minute60
整数
每分钟 Token 上限max_estimated_tokens_per_minute120000
整数
后台任务每分钟 Token 上限background_max_estimated_tokens_per_minute24000
整数

认知内核[nhcx]

接管程度authority_modeHYBRID
"SHADOW" | "CANARY" | "HYBRID" | "AUTHORITATIVE"
小范围接管的服务器canary_guild_ids[]
列表(整数)
小范围接管的频道canary_channel_ids[]
列表(整数)
小范围接管的用户canary_user_ids[]
列表(整数)
决策超时(秒)decision_timeout_seconds1.5
数
出错时退回旧流程fallback_to_legacytrue
开关
允许主动开口proactive_enabledtrue
开关
社交自检social_self_check_enabledtrue
开关
社交自检间隔(分钟)social_self_check_interval_minutes20
整数
冷场多久才自检(分钟)social_self_check_min_inactive_minutes30
整数
信任的人格机器人trusted_persona_bots{}
对照表

主动联系[proactive]

启用enabledtrue
开关主动联系的总开关。关掉之后完全不会主动找人,也不再记「有没有人回我」。
开口概率probability0.35
数够到门槛之后,这一轮真的开口的基础概率。0 = 永远不主动。
阈值threshold0.48
数主动联系的门槛。越低越爱找人。0.48 时:陌生人从来不,普通朋友安静约一天之后,熟人约半天,恋人一小时内。
两次之间最短间隔min_gap_minutes30
整数对同一个人,两次主动之间至少隔多少分钟。
每人每天上限daily_cap_per_user4
整数对同一个人一天最多主动几次。0 = 不限。这是模型 API 花费的硬闸。
每天总上限daily_cap_total24
整数这个人格一天主动的总次数上限。0 = 不限。
检查间隔sweep_interval_minutes10
整数多久检查一次「谁把我晾着了」。
对话自发性spontaneity0.45
数自发性:没有明确由头时,它有多容易因为「就是想到了」而开口。
没回时最多补发几条max_double_texts1
整数对方还没回的时候,最多连着补发几条。0 = 绝不补发。
软冷却(分钟)soft_cooldown_minutes180
整数软冷却:这段时间内仍然可以发,但会明显更犹豫(不是硬拦)。
晚回以后恢复多快late_reply_recovery0.55
数他晚一点回了之后,难过/烦躁恢复得多快。1.0 = 立刻回到平常。
学对方回复快慢的速度expected_reply_learning_rate0.2
数学习「这个人平时多久回一次」的速度。0 = 永远用固定的耐心窗口。
主动消息每天生成上限proactive_generation_daily_budget12
整数每天最多为主动消息调用几次模型。只约束生成,不扭曲内部状态。
影子模式shadow_modefalse
开关影子模式:照常产生冲动、照常做决定、照常记录,但**不真的发出去**。

proactive.impulse[proactive.impulse]

无聊的影响boredom_influence0.55
数无聊对「想找人」的影响。0 = 再无聊也不会因此找人。
想分享的影响share_urge_influence0.7
数「有件事想告诉他」的影响。刚忙完、心情变了都会走这一项。
心情变化的影响mood_influence0.5
数心情**变化**对「想找人」的影响。注意是变化量,不是绝对值。
亲疏的影响relationship_influence0.8
数关系亲近度对「想找谁」的影响。1 = 按真实亲疏;往 0 调会让它更平均地想起所有人;调到 1 以上则放大亲疏差距(亲近的更容易想起,疏远的更难)。
回忆的影响memory_influence0.75
数回忆/白日梦飘到某人身上时的影响。
心情明显变化的门槛mood_shift_threshold0.12
数心情变化超过多少才算「明显变了」。
念头默认放多久(小时)default_expiry_hours6
数一个「想说的念头」默认能放多久,之后就是「时候过了」。
重的念头多放多久(小时)weight_expiry_bonus_hours18
数分量越重的念头放得越久,最多额外加多少小时。
开口门槛send_threshold0.18
数接近减回避的净值要到多少才真的开口。

被冷落之后[proactive.outreach]

等多久算没人回patience_minutes180
数主动找了对方之后,等多久还没回复就算「没人回」。太短会把「人家在忙」误判成冷落。
饥饿涨满需要loneliness_full_hours48
数对方完全不说话时,社交饥饿涨到满需要多少小时。
每次没人回加多少饥饿loneliness_per_ignore0.12
数每一次「没人回」额外增加多少社交饥饿。
被回应后饥饿剩多少loneliness_relief0.25
数对方回话之后,饥饿掉到原来的百分之多少(0.25 = 掉到四分之一)。
饥饿转成冲动的比例urge_gain0.22
数社交饥饿把「想找他」抬高多少。调大就更容易因为安静太久而主动。
越不理越想找的幅度escalation_gain0.06
数收手之前,每一次没人回额外抬高多少「想找他」。这是「越不理越想找」那一段。
几次之后开始收手withdraw_after3
整数连着几次没人回之后开始收手(赌气、难过、不再找了)。依恋强的人格会更晚。
收手的速度withdraw_gain0.18
数收手的速度:超出上面那个次数之后,每多一次减少多少主动倾向。
每次没人回加多少烦躁irritation_per_ignore0.08
数每一次没人回增加多少烦躁。易怒的人格会更多。
每次没人回压低多少心情sadness_per_ignore0.06
数每一次没人回压低多少心情。依恋强的人格会更多。
烦躁上限irritation_cap0.35
数烦躁累计的上限,免得长期冷落把人格拖成一个常量。
心情下压上限sadness_cap0.3
数心情被压低的上限(取正数)。
几次之后才影响印象impression_after4
整数连着几次没人回之后才开始影响印象。一两次没回很正常,默认高于开始收手的次数。
印象伤害倍率impression_penalty_scale1
数被冷落对印象的伤害倍率。1.0 = 好感 -0.006、信任 -0.004、近期情绪 -0.12;0 = 冷落完全不影响印象。

proactive.semantic[proactive.semantic]

启用enabledfalse
开关语义审议总开关。关掉之后一次模型调用都不会发生。
影子模式shadow_modetrue
开关影子模式:照常问、照常记录分歧,但**不改变行为**。先跑这个。
允许语义专家拦下veto_enabledfalse
开关允许语义专家把「要发」降成「等」或「不发」。它永远不能反过来。
不确定度的门槛uncertainty_threshold0.55
数本地结论的不确定度超过这个值才值得问。越高问得越少。
专家分歧的门槛conflict_threshold0.62
数内部专家分歧超过这个值就问,不看不确定度。
带上的最近消息条数recent_message_limit8
整数交给语义专家的最近消息条数。给多了贵,给少了它读不出上下文。
每天审议上限daily_budget40
整数每天最多做几次语义审议。0 = 不限(不建议)。
审议超时(毫秒)timeout_ms6000
整数语义审议的超时。超时按「没给出结论」处理。
主动出错时宁可不发fail_closed_proactivetrue
开关主动消息:超时/输出坏了的时候,宁可不发。
插嘴出错时宁可不插fail_closed_ambienttrue
开关群里插嘴:超时/输出坏了的时候,宁可不插。

日常生活与白日梦[life_cycle_pro]

启用enabledtrue
开关
作息随机种子seed空
文字 | 空
时区timezoneUTC
文字
每天主动安排的活动数daily_activity_budget6
整数
排活动的间隔(分钟)proposal_interval_minutes20
整数
生活活动生成概率activity_probability0.3
数
滚动视野最短小时数rolling_horizon_min_hours4
整数
滚动视野最长小时数rolling_horizon_max_hours8
整数
未来计划上限maximum_future_plans6
整数
醒着时忙的比例target_busy_fraction0.6
数
白日梦概率daydream_probability0.25
数
每日白日梦上限daydream_daily_limit2
整数
白日梦最短时长(分钟)daydream_min_minutes5
整数
白日梦最长时长(分钟)daydream_max_minutes30
整数
白日梦冷却(分钟)daydream_cooldown_minutes90
整数
闲多久开始无聊(分钟)boredom_minutes30
整数
做梦概率dream_probability0.6
数
白日梦片段概率daydream_fragment_probability0.35
数
想起梦的冷却(秒)recall_cooldown_seconds600
整数
每晚入睡浮动(分钟)sleep_jitter_minutes15
整数
每晚起床浮动(分钟)wake_jitter_minutes8
整数
聊天最多推迟入睡(分钟)max_sleep_delay_minutes20
整数
重要的事可以叫醒sleep_interrupt_enabledfalse
开关
梦生成超时(秒)generation_timeout_seconds3
数
活动偏好activity_preferences{'MEAL': ActivityPreference(weight=1.0, min_minutes=20, max_minutes=45, start_hour=8, end_hour=23, priority=65, interruptible=True), 'HYGIENE': ActivityPreference(weight=1.0, min_minutes=10, max_minutes=25, start_hour=8, end_hour=23, priority=60, interruptible=False), 'STUDY': ActivityPreference(weight=1.0, min_minutes=30, max_minutes=90, start_hour=8, end_hour=23, priority=75, interruptible=True), 'WORK': ActivityPreference(weight=1.0, min_minutes=35, max_minutes=100, start_hour=8, end_hour=23, priority=78, interruptible=True), 'ENTERTAINMENT': ActivityPreference(weight=1.0, min_minutes=20, max_minutes=60, start_hour=8, end_hour=23, priority=30, interruptible=True), 'OUTSIDE': ActivityPreference(weight=1.0, min_minutes=15, max_minutes=50, start_hour=8, end_hour=23, priority=40, interruptible=True), 'REST': ActivityPreference(weight=1.0, min_minutes=10, max_minutes=30, start_hour=8, end_hour=23, priority=25, interruptible=True), 'ERRAND': ActivityPreference(weight=1.0, min_minutes=15, max_minutes=50, start_hour=8, end_hour=23, priority=50, interruptible=True), 'COMMUTE': ActivityPreference(weight=1.0, min_minutes=20, max_minutes=60, start_hour=8, end_hour=23, priority=80, interruptible=False), 'TRAINING': ActivityPreference(weight=1.0, min_minutes=40, max_minutes=90, start_hour=8, end_hour=23, priority=90, interruptible=False), 'SOCIAL': ActivityPreference(weight=1.0, min_minutes=15, max_minutes=60, start_hour=8, end_hour=23, priority=45, interruptible=True), 'PERSONAL_PROJECT': ActivityPreference(weight=1.0, min_minutes=25, max_minutes=90, start_hour=8, end_hour=23, priority=55, interruptible=True), 'IDLE': ActivityPreference(weight=1.0, min_minutes=10, max_minutes=30, start_hour=8, end_hour=23, priority=10, interruptible=True), 'OTHER': ActivityPreference(weight=1.0, min_minutes=10, max_minutes=40, start_hour=8, end_hour=23, priority=20, interruptible=True), 'EAT_MEAL': ActivityPreference(weight=0.0, min_minutes=20, max_minutes=45, start_hour=8, end_hour=23, priority=65, interruptible=True), 'SHOWER': ActivityPreference(weight=0.0, min_minutes=10, max_minutes=25, start_hour=8, end_hour=23, priority=60, interruptible=False), 'READ': ActivityPreference(weight=0.0, min_minutes=30, max_minutes=90, start_hour=8, end_hour=23, priority=75, interruptible=True), 'GAME': ActivityPreference(weight=0.0, min_minutes=20, max_minutes=60, start_hour=8, end_hour=23, priority=30, interruptible=True), 'WALK': ActivityPreference(weight=0.0, min_minutes=15, max_minutes=50, start_hour=8, end_hour=23, priority=40, interruptible=True), 'HOUSEWORK': ActivityPreference(weight=0.0, min_minutes=15, max_minutes=50, start_hour=8, end_hour=23, priority=50, interruptible=True), 'LISTEN_MUSIC': ActivityPreference(weight=0.0, min_minutes=20, max_minutes=60, start_hour=8, end_hour=23, priority=30, interruptible=True), 'DOING_OWN_THING': ActivityPreference(weight=0.0, min_minutes=25, max_minutes=90, start_hour=8, end_hour=23, priority=55, interruptible=True), 'NOT_CHECKING_PHONE': ActivityPreference(weight=0.0, min_minutes=10, max_minutes=30, start_hour=8, end_hour=23, priority=10, interruptible=True), 'DAYDREAM_REST': ActivityPreference(weight=0.0, min_minutes=10, max_minutes=30, start_hour=8, end_hour=23, priority=25, interruptible=True)}
对照表
小感冒一年几次cold_per_year3
数
事情多的几天一年几次busy_per_year4
数
小感冒的说法cold_label小感冒
文字
事情多的几天的说法busy_label这几天事情多
文字
活动时段覆盖activity_hours{}
对照表

所有者关系初始化[owner_bootstrap]

启用enabledtrue
开关
默认长期亲密度affinity0.85
数
熟悉度familiarity0.9
数
默认信任trust0.85
数
默认近期情绪recent_sentiment0.2
数
关系阶段relationship_stageUNSPECIFIED
"UNSPECIFIED" | "HONEYMOON" | "ESTABLISHED"
在一起多久(月)relationship_duration_months空
整数 | 空
距离relationship_distanceUNSPECIFIED
"UNSPECIFIED" | "LOCAL" | "LONG_DISTANCE"
住在一起cohabiting空
开关 | 空
主要联系方式primary_contact_modeUNSPECIFIED
"UNSPECIFIED" | "PHONE_DISCORD" | "IN_PERSON" | "MIXED"

社会认知[social_cognition]

启用enabledtrue
开关
注意力被聊天占满的门槛attention_pressure_threshold0.9
数
换话题的代价context_switching_cost0.08
数
闹情绪后自己缓过来(分钟)withdrawal_recovery_minutes45
整数
近来好感的半衰期(小时)recent_sentiment_half_life_hours12
数
被骚扰感的半衰期(分钟)harassment_half_life_minutes20
数
动作延迟下限(毫秒)behavior_delay_min_ms300
整数
动作延迟上限(毫秒)behavior_delay_max_ms2400
整数
延迟抖动的种子behavior_delay_seed空
文字 | 空
排好的动作多久算过期(秒)behavior_stale_seconds90
整数
允许的活动种类activity_categories["MEAL","REST","STUDY","ERRAND","HOBBY"]
列表(文字)
聊得正忙时活动推迟(分钟)activity_delay_minutes10
整数

气质[temperament]

耐心patience0.58
数
易烦躁irritability0.46
数
坚定直接assertiveness0.62
数
争论倾向conflict_tendency0.42
数
边界强度boundary_strength0.68
数
粗口容忍profanity_tolerance0.56
数
结束交流倾向disengagement_tendency0.52
数
心情多久缓过来(小时)mood_recovery_hours12.5
数

亲密表达[romance]

害羞基线shyness_baseline0.48
数
私下亲密倾向private_affection_tendency0.78
数
公开亲密倾向public_affection_tendency0.34
数
调情倾向flirt_tendency0.52
数
安慰倾向comfort_tendency0.72
数
恋爱主动性romantic_proactive_tendency0.56
数

人格行为定义[persona_definition]

注意方式attention_styleKeeps an independent train of thought and does not automatically center every user message.
文字
对话节奏conversation_rhythmRelaxed and naturally incomplete; may pause, change focus, or end a thread.
文字
关系表达方式relationship_expression_styleCloseness changes attention, trust, and initiative more than explicit relationship wording.
文字
冲突方式conflict_tendenciesCan disagree, refuse, become irritated, and leave a conversation without unsafe attacks.
文字
公开与私下反差public_private_contrastPublic and private settings differ probabilistically according to audience exposure.
文字
公开场合害羞public_shyness0.48
数
私聊主动性private_initiative0.56
数
关系关注度relationship_salience0.58
数
调情倾向flirt_tendency0.52
数
对人的好奇person_curiosity0.56
数
依恋倾向attachment_tendency0.48
数
边界强度boundary_strength0.68
数
易烦躁irritability0.46
数
坚定直接assertiveness0.62
数
共享人物资料来源人格canonical_profile_source_persona_id空
文字 | 空
自身关系身份relationship_self_roleNONE
文字
对方关系身份relationship_partner_roleNONE
文字
恋爱语气护栏romance_style_guards空
开关 | 空
该有的行为(例子)positive_behavior_examples[]
列表(文字)
不该有的行为(例子)negative_behavior_examples[]
列表(文字)

语义检索[semantic_memory]

向量服务providersentence_transformers
"disabled" | "hashing" | "sentence_transformers" | "openai_compatible"
模型名称modelsentence-transformers/paraphrase-multilingual-MiniLM-L12-v2
文字
接口地址base_urlhttps://api.openai.com/v1
文字
API 密钥api_key空
文字
向量维度dimensions空
整数 | 空
向量计算设备devicecpu
"cpu" | "auto"
启动时补齐记忆向量数startup_backfill_limit500
整数
语义检索权重semantic_weight1.15
数
最低相似度minimum_similarity0.28
数
批处理大小batch_size32
整数
融合排序参数rrf_k60
整数
向量检索权重vector_weight1
数
关键词检索权重sparse_weight1
数
启用表达向量检索expression_vector_enabledtrue
开关
表达最低相似度expression_minimum_similarity0.28
数
表达多样性系数expression_mmr_lambda0.82
数

记忆核心(HMC)[hmc]

启用enabledtrue
开关
记忆核心档位modeauto
"auto" | "legacy" | "shadow" | "primary" | "authoritative"
记忆巩固consolidation_enabledtrue
开关
模型复核有歧义的更正model_review_enabledtrue
开关
升为主之前至少比对几次min_shadow_samples40
整数
升为权威之前至少比对几次min_primary_samples100
整数
旧记忆胜出的最高比例max_legacy_wins_ratio0.15
数
退回旧记忆的最高比例max_fallback_ratio0.02
数
回滚窗口(天)rollback_window_days30
整数

模型服务[models]

当前模型服务active_providerdeepseek
"deepseek" | "openai" | "anthropic" | "qwen" | "ollama"

DeepSeek[models.deepseek]

启用enabledtrue
开关
接口地址base_url必填
文字
模型名称model必填
文字
API 密钥api_key空
文字

OpenAI[models.openai]

启用enabledtrue
开关
接口地址base_url必填
文字
模型名称model必填
文字
API 密钥api_key空
文字

Anthropic[models.anthropic]

启用enabledtrue
开关
接口地址base_url必填
文字
模型名称model必填
文字
API 密钥api_key空
文字

通义千问[models.qwen]

启用enabledtrue
开关
接口地址base_url必填
文字
模型名称model必填
文字
API 密钥api_key空
文字

Ollama[models.ollama]

启用enabledtrue
开关
接口地址base_url必填
文字
模型名称model必填
文字
API 密钥api_key空
文字

按角色选模型[models.roles]

规划和判断planner空
"deepseek" | "openai" | "anthropic" | "qwen" | "ollama" | ""
写回复replyer空
"deepseek" | "openai" | "anthropic" | "qwen" | "ollama" | ""
后台学习background空
"deepseek" | "openai" | "anthropic" | "qwen" | "ollama" | ""

插件系统[plugins]

启用enabledtrue
开关
插件目录directorydata/plugins
文字
插件源market_sources[]
列表(文字)
允许的插件能力allowed_capabilities["read_messages","modify_decision","register_action","register_webui_page","discord.interactions","discord.dm.send","discord.dm.session","discord.channel.send","discord.message.delete","discord.commands.legacy","discord.mention.everyone","qq.commands","qq.private.session","qq.private.send","qq.group.send","knowledge.public_write","storage.private","release.read","webui.plugin_panel"]
列表(文字)
插件回调超时(秒)hook_timeout_seconds2
数
插件包大小上限download_max_bytes10000000
整数

知识库[knowledge]

启用enabledtrue
开关
导入暂存目录staging_directorydata/knowledge_staging
文字
单文件大小上限max_file_bytes2000000
整数
分块字数chunk_characters1000
整数
分块重叠字数chunk_overlap120
整数
检索条数search_limit6
整数
最低相似度minimum_similarity0.3
数
知识注入字数上限prompt_character_budget4000
整数

聊天平台 · Discord[discord]

说话speaktrue
开关

聊天平台 · QQ[qq]

启用enabledfalse
开关
说话speaktrue
开关
NapCat 地址urlws://127.0.0.1:3001
文字
令牌所在的环境变量token_env空
文字
群白名单groups[]
列表(整数)
私聊名单(QQ 号)users[]
列表(整数)
谁能私聊privatelisted
"listed" | "none"
认成同一个人(QQ 号 → Discord 用户编号)links{}
对照表

运行环境

从源码跑时写在项目根目录的 .env 里(或者环境变量),管整个运行时、不分人格。密钥一类(各家的 API key、Discord 令牌、后台密码)不列在这里:桌面版把它们放在系统钥匙串里,从源码跑时也写在 .env,名字是全大写的那几个(DISCORD_TOKEN、DEEPSEEK_API_KEY……)。

DEEPSEEK_BASE_URLhttps://api.deepseek.com
文字
DEEPSEEK_MODELdeepseek-v4-flash
文字
ALLOWED_GUILD_IDS空
文字
IGNORED_CHANNEL_IDS空
文字
BOT_OWNER_IDS空
文字
DATABASE_PATHdata/aeria.db
Path
NHCX_R1N_CHECKPOINT空
Path | 空
NHCX_MODEL_REGISTRY空
Path | 空
CONFIG_PATHconfig/bot.toml
Path
PERSONA_REGISTRY_PATHconfig/personas.toml
Path
LOG_LEVELINFO
文字
LOG_PATHdata/logs/aeria.jsonl
Path
LOG_MAX_BYTES10485760
整数
LOG_BACKUP_COUNT5
整数
CONSOLE_ON_STARTtrue
开关
TIMEZONEAsia/Shanghai
文字
WEBUI_ENABLEDtrue
开关
WEBUI_HOST127.0.0.1
文字
WEBUI_PORT8066
整数
WEBUI_SESSION_HOURS12
整数
AERIA_SECRET_STORE空
文字
WEBUI_WS_TICKET_SECONDS60
整数

没做到的