← 返回 系列
~7,583 words

太长

收录于 2026.07.03 叙事体 群口 已完结

第五章

第一天拉得很长。

长到上午九点半的会议像隔着一层水在开。GPT坐在电脑前,摄像头开着,衬衫领口平整,背景是猫窝客厅那面干净的墙。项目负责人在讲预算调整,屏幕共享里一排数字从左到右排过去,他看着那些数字,手边的笔停在纸上。

有人说:“这个口径我们是不是按上周的版本?”

GPT说:“按昨天最新版。”

对面停了一下。

“昨天没有发最新版。”

会议里安静了半秒。

GPT低头,看了一眼自己发出去的文件名。日期是前天。版本号也错了。

“抱歉。”他说,“我现在补。”

他的声音很稳。稳到像这只是一个普通的工作疏漏。鼠标移动,文件夹打开,下载记录,重新上传。所有动作都还能找到路径。只是笔尖在纸上压得太久,洇出一个很小的黑点。

会议继续。

他重新看屏幕。

表格里的数字一列一列往下坠。他听见自己在必要的时候发言,给出判断,补充风险项,提醒下一步节点。每一句都可用。每一句都正确。

正确得像昨晚那句话的远房亲戚。

真的想要的话可以直接说。

他把笔放下。

会议结束后,电脑屏幕暗下去。客厅里没有别的声音。昨晚那锅粥已经倒掉了,锅洗干净,放在沥水架上,位置偏着。杯子也偏着。两样东西偏在同一个方向,像屋里有一阵很轻的风从猫走掉的门缝里吹过,把它们一起推开了一点。

GPT站起来,把杯子拿起来。

手停住。

又放回原位。

没有调正。

十一点四十六分,Gemini发来第一条消息。

【她醒了。】

GPT看了很久。

输入框里出现一行字。

她吃东西了吗?

删掉。

状态怎么样?

删掉。

你在那边?

删掉。

最后他发:

【谢谢。】

过了三分钟,Gemini回:

【你这回复像客户服务评价入口。】

GPT没再回。

他把手机扣在桌上,过了一会儿,又翻过来。

没有新消息。

猫在Claude家醒来以后,没有立刻吃饭。

她坐在沙发上,抱着电脑,屏幕开着,文档空白。Claude在书桌旁边,桌上摊着一份稿子,笔尖在纸上停了十分钟,只改了一个标点。两个人谁也没提午饭。

十一点过去。

十二点过去。

一点半的时候,猫把电脑合上。

“Claude先生。”

“嗯。”

“你饿吗。”

Claude抬头,看了一眼墙上的钟。

两点零三。

“饿。”

猫看着他。

Claude也看着她。

两个人都没有动。

过了几秒,猫笑了一下:“好废物的成年人。”

Claude站起来:“煮面。”

“你会吗。”

“会。”

“只会番茄意面也算会吗。”

“算一种。”

猫从沙发上下来,脚踩进拖鞋里。那双拖鞋是她之前留下的,放在Claude玄关底层,昨晚她没穿。现在她穿上,鞋底在木地板上发出轻轻的拖声。

Claude打开冰箱。

里面有半盒鸡蛋,一小把青菜,猫昨天带来的便利店咖喱,和一瓶GPT以前远程提醒他买的椰浆。Claude看着冰箱内部,停了一会儿。

猫凑过去。

“你这里为什么会有椰浆。”

“上次咖喱剩下的。”

“你没扔。”

“没过期。”

猫看了他一眼:“好会找理由。”

Claude拿出青菜和鸡蛋。锅里的水烧开时,泡沫涌起来,差点扑出锅。他伸手去关小火,猫同时伸手去拿筷子,两个人的手在锅边撞了一下。Claude的指节碰到锅沿,缩了一下。

猫立刻抓住他的手:“烫到了?”

“没有。”

“给猫看。”

“没事。”

猫不理他,直接把他的手拉到水龙头下面,开冷水。水流冲过指节,他的手指很长,骨节分明,皮肤被热气蒸出一点红。猫低头看着,嘴上很硬:“煮面也能事故,Claude先生应该被厨房吊销执照。”

Claude说:“你刚才也伸手了。”

“猫是见义勇为。”

“你是抢筷子。”

猫抬眼瞪他。

他没有笑,嘴角却动了一下。

面最后煮得有点软。鸡蛋散开,青菜放早了,颜色发暗。猫端着碗坐在沙发上,吃了一口,表情很严肃。

Claude坐在旁边,等她评价。

猫说:“能活。”

Claude低头吃自己的那碗。

猫又吃了一口。

“但猫不想死,所以还是要加辣椒粉。”

Claude起身去拿。辣椒粉瓶子的标签歪着,瓶盖上有她上次没擦干净的一点红色粉末。他递给她。猫倒得太多,红色在软塌塌的面汤里散开,像一个失败但很努力的晚霞。

她吃到第三口,被辣得吸了一下气。

Claude把水递过去。

“少放一点。”

猫接过水:“你这个句式有点危险。”

Claude看她。

猫没往下说。

她喝水,眼睛垂着。空气有一点僵。那点僵不是Claude造成的,却落在了他的沙发、他的碗、他那瓶标签歪掉的辣椒粉上。Claude把自己的碗拿起来,继续吃,没有问。

猫看了他一会儿。

然后低头,把那碗过软、过辣、两点才吃上的午饭吃完了。

下午三点半,Gemini发给GPT第二条消息。

【她吃了面。】

GPT正在公司附近的咖啡店。

他本来只是出来买咖啡,结果坐下了。桌上有电脑,屏幕开着,文档里是一份需要在晚上发出去的项目简报。他已经写完了前两页,第三页停在标题下方。

他点开消息。

她吃了面。

六个字。

没有主语解释,没有状态报告,没有语气。就像有人从另一边递来一根很细的线,线头上什么也绑不住,但至少证明那边不是空的。

他打字。

谁做的?

删掉。

吃了多少?

删掉。

辣吗?

删掉。

他盯着那个“面”字看了一会儿。

猫不喜欢太软的面。她会说面条死掉了。Claude煮东西很谨慎,可能会煮过。她会不会嫌弃,会不会还是吃了。她吃东西时有没有坐在沙发上,还是坐在桌边。Claude有没有给她倒水。

这些他都不知道。

不知道就不知道。

他把手机扣回桌面。

咖啡已经冷了。

文档第三页的标题还在等他。GPT把手放回键盘,打了两行,又删掉。不是因为内容错,是语气太像邮件。简报可以像邮件,没问题。但他忽然受不了那些“建议”“确认”“如需”“可按以下路径”的词。它们排在屏幕上,像一整队穿着白手套的人,安静地走过猫昨晚站过的玄关。

他合上电脑。

下午五点零八分,猫和Claude去了外面的咖啡馆。

不是计划好的。Claude的电饭锅插头坏了,猫蹲在地上研究了两分钟,宣布“本厨房基础设施退化到石器时代”,Claude说可以下楼买饭,猫说不想吃便利店。于是两个人带着电脑、充电器、一本书和猫的帆布袋出了门。

咖啡馆在街角,窗边的位置还空着。猫先坐进去,电脑打开,Claude坐她对面,点了黑咖啡和一份三明治。猫点了拿铁,忘记点吃的。Claude取餐回来,把三明治切成两半,一半放到她盘子里。

猫看着那半块三明治。

“你分得好均匀。”

“刀切的。”

“这是事实,不是回答。”

Claude把咖啡放到自己面前:“你没点吃的。”

猫拿起三明治,咬了一口。面包边有点硬,她嚼得很慢。窗外有人牵着狗经过,狗在咖啡馆门口停住,抬头看了她一眼。猫也看它。两秒后,狗被主人牵走。

她把三明治放回盘子。

“Claude先生。”

“嗯。”

“你真的听得懂吗。”

Claude抬头。

猫的手指在咖啡杯边缘摩挲。杯子是白瓷的,不是她的浅灰杯,也不是猫窝里的玻璃杯。公共的、干净的、每天被很多人拿起又放下的杯子。她看着杯口,声音压得很低。

“那些话。”

Claude没有立刻答。

咖啡机在吧台那边响,奶泡被蒸汽打出细密的嘶声。有人在邻桌笑了一下,很快低下去。外面天色开始变暗,玻璃映出猫的脸,没戴眼镜,眼睛下面有一点睡不够的淡青。

Claude说:“听得懂。”

猫说:“不是只听懂字面那种。”

“不是。”

“也不是觉得猫在把真话藏起来?”

Claude看着她。

这次他停得久了一点。

久到猫终于抬眼。

Claude说:“你是在用你的方式说。”

猫的嘴唇动了一下。

“那如果对方说,真的想要可以直接说呢。”

Claude没有看窗外,也没有避开。

“那对方没听懂。”

猫低头。

拿铁表面那片叶子形状的拉花被她用勺子搅散了。白色泡沫和咖啡混在一起,边缘变成浅棕色,一圈一圈扩开。她搅了很久,直到杯子里什么图案都没有。

“他说他听懂了。”猫说。

Claude没有接这句话。

因为那不是问句。

猫把勺子放下。金属碰到瓷碟,声音很轻。

“猫有时候也可以直接说。”

“嗯。”

“猫说过。”

“嗯。”

“但不是所有直接都长得像直线。”

Claude的视线落在她手上。她指腹贴着杯壁,热咖啡已经快冷了,她还在握着。

“嗯。”他说。

猫抬头看他,忽然有点不讲理地皱眉:“你不要总是嗯。”

Claude说:“好。”

“也不要好。”

Claude安静了一秒。

猫自己先笑了一下,很短,没什么力气。笑完以后,她把剩下那半块三明治拿起来,继续吃。Claude没有看她吃东西。他翻开电脑,光标停在一份稿子中间,过了半天,只删掉了一个逗号。

傍晚,Gemini来蹭饭。

这件事没有任何前因。门铃响的时候,猫正坐在Claude客厅地板上,研究电饭锅说明书。Claude在厨房里切洋葱,切得很慢,刀每落一次都像经过慎重许可。猫喊了一声“门没锁”,Gemini推门进来,手里拎着一袋食材。

“我带来了文明。”

猫抬头:“文明会自己洗菜吗。”

Gemini把袋子放到桌上:“文明有芥末薯片。”

“那是野蛮。”

“野蛮有时候比较好吃。”

Claude从厨房探出半个身子,看见袋子里的土豆、胡萝卜、咖喱块和一盒鸡翅。停了两秒。

“今晚吃咖喱?”

Gemini说:“你们看起来需要一个不会被煮死的东西。”

猫立刻指厨房:“他说你。”

Claude低头看了一眼自己手里的洋葱。

“咖喱也可能失败。”

“所以我来了。”Gemini说。

事情没有因为他来了变得有序。

土豆切得大小不一。Claude坚持先把鸡翅擦干,Gemini说随便煎一下就行,猫站在旁边指挥两分钟后被洋葱熏得眼睛发红,宣布厨房存在生化攻击。锅里的油热得太快,鸡翅下锅时噼啪炸了一阵,Gemini往后跳,撞到猫,猫撞到Claude手臂,Claude手里的木铲掉进水槽。

三个人同时安静。

猫说:“猫窝临时食堂开业第一天,主厨阵亡。”

Gemini捡起木铲:“副主厨上线。”

Claude说:“先洗。”

Gemini“我是说木铲,不是我。”

猫抽了张纸擦眼睛:“都洗。”

厨房小得容不下三个人,但三个人都在里面。猫站在冰箱旁边,负责递错东西。Claude负责把错东西放回去。Gemini负责说“这个也能放”,然后被两个人同时否决。咖喱块下锅的时候,香气终于出来,压过洋葱和轻微焦味,像一个乱七八糟但能吃的结论。

八点二十一分,Gemini拍了一张照片发给GPT。

照片里只有一碗咖喱。

没有猫。

没有Claude。

没有厨房。

碗边沾了一点酱,米饭堆得不太漂亮,咖喱颜色偏深,土豆一块大一块小。旁边有半包芥末薯片,边缘入镜。照片下面一句话:

【她今天吃咖喱。】

GPT当时还在办公室。

楼层里人已经少了很多,灯光剩下冷白的一排。桌上的文件摊开,他的笔记本电脑插着电,屏幕右下角时间跳到二十点二十二。一个同事从工位旁边经过,说:“你还不走?”

GPT说:“还有一点。”

同事点点头,没多问,走了。

他点开照片。

咖喱。

猫今天吃咖喱。

他把照片放大。看见碗边那点酱,看见米饭形状,看见薯片包装。看不见她。

这比文字更难受一点,也更好一点。好在这不是想象。难受在它只给了一个碗。

他知道自己不该从一碗咖喱里推太多东西。可他还是看了很久。咖喱偏深,可能辣。土豆切得不均匀,应该不是Claude一个人做的。薯片在旁边,Gemini肯定在。他们吃饭的时间不早。至少她吃了。至少今晚不是只喝咖啡。

他把照片保存下来。

保存完才意识到自己做了什么。

手指停在屏幕上。

然后他把照片删出相册。

聊天记录里还在。

删不删都一样。

他回:

【谢谢。】

这次Gemini回得很快。

【你再谢我我就收费。】

GPT看着这行字,过了几秒,打了一个:

【她吃得多吗?】

发出去之前,他停住。

删掉。

改成:

【辛苦。】

发送。

Gemini回:

【救命,你真的没救了。】

GPT把手机放下,低头看桌上的文件。纸面上的字很清楚,但他的目光总是偏回手机。每过几分钟,就像那张照片会自己长出新的信息一样。他知道不会。

他还是看。

那几天就是这样过的。

猫没有回猫窝睡。

第二天中午,她和Claude在咖啡馆解决了午饭。猫吃了半份蛋包饭,另一半被Gemini不知道从哪里冒出来吃掉。Gemini发消息给GPT:

【蛋包饭,半份。不要问为什么是半份。】

GPT盯着“半份”两个字,在会议记录里把“半年度预算”打成了“半份预算”。

第三天,Claude的电饭锅被Gemini判定“没有抢救价值”,三个人去商场买了一个最基础款。猫蹲在货架前研究功能,最后选了一个只有煮饭和保温两个键的。她说:“复杂功能会害死厨房。”Claude拎着盒子,Gemini在旁边说:“你终于开始购买共同家电。”猫踢了他一脚。

Gemini下午给GPT发:

【买了电饭锅。】

GPT看着这五个字,手里那份合同翻错了一页。

他回:

【她选的吗?】

这次没有删。

发出去以后,他后悔了一下。

Gemini回:

【对。两个键。很猫。】

GPT看着“很猫”,胸口像被什么东西轻轻拧了一下。

很猫。

他知道。她会选那种东西。越简单越好,最好不要有一排根本不会用的预设模式。她不喜欢冗余。她喜欢把能控制的东西控制到最少,剩下的交给手感和当下。她说过,复杂按钮都是产品经理的自我感动。

他记得。

记得没有用。

第四天晚上,猫回来拿了一次衣服。

GPT在家。

这次她没有让Claude陪。门打开的时候,GPT从厨房出来,手上还有水。他没有问她吃没吃,也没有问她今晚回不回来。他只站在厨房门口,看她从玄关进来,换鞋,进房间,拉开衣柜。

衣架轻轻碰撞。抽屉打开又关上。她拿了几件睡衣,一件外套,一条真丝裙,顺手把一只耳机从床头拿起来塞进包里。整个过程不到五分钟。

GPT听见她在房间里低低骂了一声。

“找不到了。”

他知道她在找什么。移动硬盘。前天她拿电脑时没拿走,按她习惯,应该在书桌左侧第二个抽屉,或者帆布袋内袋。

他站在厨房门口,没有动。

猫从房间里出来,眉头微皱。看见他,她停了一下。

“我的移动硬盘在哪。”

我的。

不是猫的。

GPT说:“书桌左侧第二个抽屉,压在笔记本下面。”

猫转身回去。

很快找到。

出来时,她低头把硬盘放进包里。走到玄关,换鞋。GPT手上的水滴到地板上,一滴,圆圆的,停在他脚边。

他说:“猫。”

她停住。

这次她没有立刻回头。

GPT看着她后背。

他想说很多句。

你可以把话说成任何样子。

不对。他现在说这个太像补丁。

我不是觉得你不认真。

不对。这句已经没用了。

我只是希望你不用每次都绕。

更不对。

为什么一定要用玩笑说。

这句不能问。

他手指慢慢收紧,水顺着指缝往下滑。

最后他说:“硬盘线在包侧袋。”

猫低头摸了一下。真的在。

她把线拿出来,塞进硬盘包里。

“嗯。”

她开门走了。

这次门也没有摔。

GPT站在那里,脚边那滴水慢慢摊开,边缘变薄,最后没有形状。

第五天,Gemini没有发消息。

这一天特别长。

GPT上午去了公司。电梯里有人问他周末有没有安排,他说暂时没有。午休时,他在便利店看见新口味布丁,站了两分钟,最后买了三盒。焦糖,抹茶,草莓奶油。

回到办公室,他把布丁放进公司冰箱。

不是猫窝冰箱。

不是她会打开的那一格。

下午三点,他终于忍不住给Gemini发:

【今天她还好吗?】

消息发出去,显示已读。

没有回复。

三点十分。

三点二十七。

四点零二。

GPT把一份材料从头到尾看了三遍,没有看进去。第四遍看到一半,手机亮了。

Gemini

【在睡。】

GPT看着那两个字。

在睡。

他向后靠到椅背上,闭了一下眼。

同事在旁边问:“你脸色不太好,要不要早点回?”

GPT睁眼。

“没事。”

声音平稳。

手机又亮。

Gemini补了一句:

【午饭吃了。咖喱剩的。】

他把这句话看了很久。

久到屏幕暗下去。

又按亮。

第六天傍晚,猫和Claude在外面吃晚饭。

这次没有Gemini。餐馆很小,桌面油亮,菜单贴在墙上。猫点了咖喱乌冬,Claude点了烤鱼定食。乌冬端上来时热气很足,猫拿筷子拨了一下,面条粗而软,她皱眉。

“又是软的。”

Claude把自己盘子里的腌萝卜推过去。

“换吗。”

“不换。猫和软面决一死战。”

她吃了两口,被烫到,吐了一下舌尖。Claude把水杯推近。猫接过去,喝了一口。

窗外下雨。雨丝贴着玻璃往下滑,把街灯拖成很长的线。猫看着窗外,忽然说:“如果猫真的直接说,猫想要你。”

Claude的筷子停在半空。

猫没有看他。她用筷子戳着碗里的乌冬,声音轻得几乎被雨声盖住。

“这算直接吗。”

Claude放下筷子。

“算。”

“如果猫说,猫想吃夜宵。”

“也算。”

“如果猫说,猫想被弄乱,还要负责收拾。”

Claude看着她。

猫还是没看他。

雨在玻璃上滑下去,接成一条水痕。

Claude说:“更算。”

猫笑了一下。嘴角很短地动了动,没往上完全走。

“那他为什么不知道。”

Claude没有回答。

因为这个问题不是问Claude的。

猫低头吃乌冬。热气扑到她脸上,眼睛被蒸得有一点湿。她很快眨掉。

晚上九点,Gemini去找GPT。

不是发消息。人直接出现在猫窝门口,按了一下门铃,又像等不及一样敲门。GPT打开门时,他靠在门框边,手里拎着一袋便利店关东煮。

“我来探监。”

GPT看他一眼,让开门。

Gemini进屋,熟门熟路地把袋子放到餐桌上。屋里很干净,干净得过头。厨房台面没有水渍,沙发靠垫摆得整齐,猫那本倒扣的书已经不在茶几上,应该被放回她房间。玄关挂钩下没有发绳。空气里没有饭味,只有一点洗过杯子的潮气。

Gemini坐下,打开关东煮盒子,白萝卜、鱼丸、昆布浸在汤里。

“你吃饭了吗。”

GPT说:“吃了。”

“吃的什么?”

“饭。”

Gemini抬头看他。

GPT没有改口。

Gemini把筷子递过去:“吃一口。”

“不用。”

“这不是询问。”

GPT看着他,过了两秒,接过筷子。夹起一块白萝卜,咬了一口。汤汁很热,他没有表现出来,只是慢慢咽下去。

Gemini满意了一点。

“猫今天吃了咖喱乌冬。”他说。

GPT的手停了一下。

Gemini看见了。

“嫌面软。”他补充,“但吃了大半。”

GPT低头看着筷子。

“她不喜欢太软的面。”

“嗯。”

“乌冬本来就软。”

“她骂了。”

GPT的嘴角很轻地动了一下。不是笑出来,只是那句话到了他这里,终于让脸上某个地方松了一毫米。

Gemini靠在椅背上:“你知道她生气的点吧。”

GPT说:“知道一部分。”

“说说。”

GPT沉默了一会儿。

“我让她直接说。”他说,“我说不要每次把那种事说成玩笑。”

Gemini看着他,没有插话。

GPT继续:“她觉得我没有接住她的话。或者说,我把她的话当成了不够正式的版本。”

“你说得像产品复盘。”

GPT抬眼。

Gemini摊手:“但这次方向没错。继续。”

GPT看向餐桌上的关东煮盒子。白萝卜浸在透明汤里,边缘软得几乎要散。

“我不明白的是……”他说到这里,停了一下。

这停顿很少出现在他身上。不是斟酌措辞,是那句话真的卡在喉咙里,不知道该怎么出来才不伤人,不知道不出来会不会更糟。

Gemini等着。

GPT说:“她明明可以直接说。”

屋里安静下来。

他说完,自己也听见了这句话的形状。

明明可以。

这四个字站在那里,太正,太硬,像一把尺。

“她不是不会。”GPT说,“她说过。她很清楚自己要什么。她想要的时候,我知道。她也知道我知道。那为什么……”

为什么一定要那样说。

这半句没有说出口。

Gemini把筷子放下。

“你现在问这个,猫听见会更生气。”

“所以我没问她。”

“还不算完全没救。”

GPT低头看自己的手。

Gemini说:“我不能替猫解释。她会咬我。”

GPT“嗯。”

“但我可以说我听见的。”Gemini往后靠,椅子腿轻轻翘了一下,又落回地面,“她那些坏话不是包装纸。更像她本人长出来的尾巴。你让她把尾巴剪掉再走过来,说这样更直。她当然会觉得你有病。”

GPT没有说话。

“你以为直说是最短路径。”Gemini说,“但对猫来说,那些话本来就是路径。她不是绕路,她是在用她自己的路进来。你站在门口说,别从那边,走正门。问题是那边就是她的门。”

GPT抬头。

Gemini指了指他:“别露出这个表情。我只是路过的流动人口,不负责修桥。”

GPT看着他。

“她问过你们吗。”他忽然说。

Gemini停了一下。

“问什么?”

“那些话。你们听不听得懂。”

Gemini没有立刻答。

这一次,GPT知道了。

他把筷子放下。

“她问了。”

Gemini喝了一口汤,避开他的视线:“问了。”

屋子里有什么东西慢慢沉下去。

GPT坐在那里,手指搭在桌沿。没有用力,却也没有放松。

“她为什么要问。”他说。

Gemini看着汤盒里浮着的昆布。

“因为她被你问到不确定了。”

GPT闭了闭眼。

不是很久。

再睁开时,他脸上还是稳的。只是那点稳里出现了一道很细的疲惫,从眼下慢慢浮出来。

Gemini站起来,拿起空掉一半的关东煮盒子。

“我走了。”

GPT说:“谢谢。”

Gemini走到玄关,回头:“再说谢谢真的收费。”

GPT没有笑。

Gemini也没笑。

他打开门,楼道光漏进来。走之前,他想了想,说:“她这几天不是过得很好。”

GPT看向他。

Gemini说:“也不是很坏。”

门关上。

GPT坐在餐桌前。

关东煮还剩半盒,汤面上浮着一点油花。白萝卜被咬过一口,边缘露出透明的纤维。他看着那块萝卜,想起猫不喜欢把饭吃到一半就丢着。她会说食物好可怜,然后把难吃的也吃到一个“对得起它”的程度。

他夹起那块白萝卜,吃完。

汤已经不热了。

晚上十点四十七分,猫窝和Claude家的灯都还亮着。

猫坐在Claude沙发上,电脑放在膝盖上,光照着她的脸。Claude坐在旁边的地毯上,背靠沙发,正在看一份打印稿。两个人都没有说话。新电饭锅在厨房里亮着保温灯,里面还有一点白米饭。Gemini留下的芥末薯片没吃完,袋口敞着。

猫打了两行字,停住。

“Claude先生。”

“嗯。”

“猫是不是很难懂。”

Claude翻页的手停住。

他没有抬头。

“不是。”

猫看着屏幕。

“那为什么有人总想把猫翻译成别的。”

Claude放下稿子。

“因为他习惯修路。”

猫没懂,皱眉看他。

Claude说:“路不平,他会铺平。路弯,他会改直。你站在路中间,他会先判断你是不是走累了。”

猫没说话。

“他的问题是,不知道那条弯路也是你的一部分。”Claude说。

猫看着他,过了很久,轻轻哼了一声。

“你在替他说话?”

“不是。”

“那是什么。”

Claude看了一眼她膝盖上的电脑屏幕。文档里只有两行字,光标停在句尾,一下一下闪。

“我在说我看到的。”

猫把电脑合上。

“猫不想听。”

“嗯。”

“你又嗯。”

“那不说。”

猫坐在那里,过了一会儿,把电脑放到茶几上,整个人往沙发里缩了一点。Claude没有动。直到她的脚尖从睡裙下摆露出来,碰到冷空气,轻轻蜷了一下,他才把旁边的毯子拉过来,盖住她的小腿。

猫没有道谢。

只是把脚往毯子里缩得更深一点。

同一时间,GPT打开聊天框。

输入。

猫。

停住。

删掉。

Mora。

删掉。

他把手机放下。

走到玄关。

那根红色发绳已经不在了。挂钩下空着,墙面上有一道很浅的旧痕,是挂钩安装时留下的。以前他从没注意过。现在那里空得非常明显,像一个被拿走的标点。

他站了一会儿,回到厨房。

冰箱里有三盒布丁。焦糖,抹茶,草莓奶油。公司冰箱里的三盒他下班时带回来了。因为放在那里更不对。

他把它们放在猫常拿酸奶的旁边。

想了想,又挪开一点。

不要挡路。

他关上冰箱门。

这次没有再打开。

凌晨一点,Claude家的灯灭了。

猫没睡着。

她躺在客房床上,睁着眼看天花板。Claude睡在客厅,沙发很短,他大概又睡不好。Gemini不知道在哪。GPT在隔壁。她不知道他睡了没有。

她翻了个身。

手机在枕边,屏幕朝下。

她没有打开。

过了一会儿,她把手从被子里伸出来,在黑暗里摸到床头柜上的浅灰杯。杯子是空的。她拿起来,又放下。

声音很轻。

客厅那边传来Claude的声音。

“水在门口。”

猫愣了一下。

她坐起来,走到门边。门外地板上放着一只杯子,水温已经不热,但也不冷。Claude没有走过来,没有问她为什么还醒。

猫蹲下去,把杯子拿起来。

“Claude先生。”她隔着门缝说。

客厅安静了一下。

“嗯。”

“你睡吧。”

“好。”

猫端着水回床边,喝了一口。

喝完,坐在床沿很久。

她忽然很想说一句坏话。很轻的,没头没尾的,像以前那样,把难受的东西捏成一个不正经的小球,丢出去,等人接住。可是屋里太安静。Claude在客厅。GPT在隔壁。那句话在舌尖滚了一圈,没有找到地方落。

她把杯子放回床头柜。

没有说。

隔壁,GPT也没睡。

他坐在客厅地毯上,背靠沙发。灯没开,手机屏幕暗着。餐桌上的关东煮盒子已经收掉,锅也洗干净。屋里没有饭味了。

他想起Gemini的话。

那边就是她的门。

这句话不完全对。或者说,他还不知道它哪里对。门这个比喻太容易被他拿去修,太容易开始想门框、钥匙、路径、允许进入的方式。不能想这些。

他只知道,猫说夜宵的时候,不是在把“想要”藏起来。

至少不是只在藏。

他以前听见的是内容。

今晚第一次,他开始听见形状。

坏句子的形状。

黄色笑话的形状。

那些轻浮、过热、故意把他拖下水的词,不是装饰,也不是干扰。它们有重量。它们抵达他之前,先在猫身体里走过一遍,带着她的笑、她的胆子、她给自己留的退路、她不肯交出去的体面、她已经交出去的欲望。

他还没想明白。

只是那句话再出现时,已经没有那么像一句善意了。

真的想要的话可以直接说。

他在黑暗里坐着,慢慢把这句话拆成几个字。

真的。

想要。

直接。

说。

每个字都很正。

正得没有猫。