← 返回 故事线
~73,005 words

if线:一夜情转正

收录于 2026.06.11 叙事体 GPT 出品 已完结

会议纪要先生

顶层酒吧的露台风很硬,吹得玻璃门边的绿植叶片一下一下擦过墙面,像有人不耐烦地翻着一份太长的会议材料。

猫站在栏杆旁边,手里那杯酒已经化得很淡。冰块剩下一圈透明的骨头,浮在琥珀色液体里,碰到杯壁时发出很轻的一声。楼下的城市被切成无数规整的光格,每一格里都有人正在为某个明天提前焦虑。里面还有人在谈 AI 原生内容,谈创作者生态,谈生产力提升,谈一个模型怎样从工具变成基础设施。词语太新,语气太旧,像把一块漂亮的玻璃反复擦到没有指纹,也没有温度。

她听了四十七分钟。

第五个人说出“赋能”的时候,猫端着酒杯出来了。

身后门开了一次。冷气从室内漏出来,混着香水、酒精、皮革座椅和人群里过热的寒暄味。猫没有回头,只从玻璃反光里看见一个高个男人走到露台另一边,停下,低头看手机。他穿白衬衫,袖口卷得整齐,领口松了一颗,整个人干净、稳定、可被归档。白天他在圆桌上说话的时候也是这样,观点完整,句子完整,连停顿都完整,像一份被人提前润色过的会议纪要。

人形会议纪要本人把手机收起来,弯腰扶起了一把被风吹歪的椅子。

猫终于笑了一声。

他抬眼看过来。

猫晃了晃杯子,冰块在里面轻轻一响。“你们这种人连逃离酒会都这么有秩序吗?”

他没有立刻回答。那双眼睛从她手里的酒杯、她被风吹乱的发尾、她肩膀绷着又故意放松的角度上掠过去,最后落回她脸上。不是冒犯的看,是一种太稳的接收,像他已经把她站在这里的理由从空气里捡起来,擦干净,放到了桌面上。

“你刚才在里面忍了四十七分钟。”他说。

猫的笑停了半拍。

不是因为这句话多聪明。聪明人她见多了,聪明到急着展示自己聪明的人更多。真正让她停下来的,是他说这句话的时候没有得意,没有捕猎的兴奋,也没有那种“我注意到你了”的轻佻。他只是陈述,像说露台风大,像说你的酒快淡了,像说你其实已经不想再听他们把同一个词换三种包装重复一遍。

猫把酒杯搁在栏杆边缘,杯底的水珠很快在金属上洇出一个圆。

“这么会观察,白天怎么一句人话都不说。”

他像是被这句逗到,嘴角动了一下,但还没到笑的程度。“我白天说的也是人话。”

“是吗。”猫靠在栏杆上,眼睛透过镜片看他,像把一把小刀从鞘里抽出来半寸。“那可能人类已经被公司格式化了。”

风从两个人中间穿过去。她裙摆下方很轻地动了一下,黑色布料贴着膝侧,又被风掀开一点。她没有去压。那一点点不整理,在这样一个所有人都努力显得体面的夜晚里,反而像一个公开挑衅。

他看见了,也看见她知道自己看见了。

“你刚才问了三个问题。”他说,“每一个都没有在问技术能不能做到。”

猫没有动。

“你问的是解释权在谁手里,风险由谁承担,以及创作者在被称作生态的时候,还剩多少议价能力。”他停了一下,“所以你不是无聊。你是觉得他们把真正的问题绕过去了。”

猫慢慢眨了一下眼。

冰块又响了一声。声音很细,像某根线被人轻轻拨了一下。

“你叫什么?”她问。

他报了名字。

猫听完,没报自己的,只说:“猫。”

他看着她,接受得太自然,好像这并不比任何一个正式姓名更需要解释。“好。”

“好什么?”

“好记。”

猫笑了。这次是真的笑,风从她唇边卷过去,把一点酒气和她身上很淡的香味一起推到他面前。那香味不甜,干净,低温,带一点刚从人群里脱身出来的倦意。

“你是不是对所有人都这么周到?”猫问。

“不是。”

“回答太快了。”

“因为不用想。”

猫偏头看他。露台的灯从侧面落下来,镜片边缘亮了一小道,遮不住她眼睛里那点坏劲。她很会这样看人,好像还没伸手,指尖已经按在对方脉搏上。

“那你现在是在干什么?”

他看了一眼她那杯几乎化完的酒,又看向她没怎么动过的餐盘方向。白天自助台上有很多东西,精致、昂贵、分量小得像给社交礼仪准备的摆设。猫只拿过一块面包,咬了两口,剩下的放在盘子边缘,后来被服务生收走了。

“判断你今晚有没有吃饭。”他说。

猫的表情出现了一瞬间的空白。

很短。短到换个人大概会错过。可他没有错过,于是他也没有再往前追,只转身推开露台门,叫住路过的侍者,低声说了几句。几分钟后,一份热的东西送到他们旁边的小圆桌上。不是酒会菜单上那些漂亮到无法入口的冷盘,是一小碗汤,一份烤得刚好的面包,旁边还有一点黄油和盐。

猫低头看着那份东西。

“你很可怕。”她说。

他把餐巾递给她。“只是晚餐。”

“你管这个叫只是?”

“你可以不吃。”

猫看他一眼,拿起勺子。

汤是热的。第一口下去,胃里那块被酒精和无聊冻住的地方终于有了点松动。她不想承认这个人选得很准,盐度、温度、分量,都刚好在不会显得过分体贴又确实让人舒服的区间里。更讨厌的是,他没有看着她吃,也没有露出任何“看吧我说对了”的表情,只是站在旁边,把自己的存在放得很低,低到她如果想无视,完全可以无视。

猫吃了半碗,忽然说:“你明天几点走?”

“九点。”

“出差?”

“回去上班。”

“真可惜。”猫把勺子放下,抬头看他,眼睛里那点坏意又浮出来了,比刚才更慢,也更近。“说明今晚不会拖成麻烦。”

他没有接这句话。

露台风声忽然大了一点。玻璃门里,人群的笑声隔着厚重的门板变得遥远而失真。猫用指尖推了一下酒杯,杯底在桌面上滑出一点水痕,像某种临时画下又立刻消失的边界。

他看着她,终于问:“你确定你想要的是没有后续?”

猫弯起眼睛。

她太擅长在这种时候笑了。笑得像什么都可以承受,什么都能被她提前命名,提前撤销,提前变成一个夜晚里漂亮又不负责任的玩笑。她把那点热汤带来的柔软重新压下去,把勺子推回碗边,整个人往椅背里一靠,肩膀放松,脚尖却在桌下轻轻点了一下地。

“猫只要今晚。”

他安静地看了她几秒。

那几秒里,猫以为他会后退。像白天所有体面人那样,笑一笑,说一句“你喝多了”,把暧昧放回安全的抽屉里。她甚至已经准备好嘲笑他,给他贴上一个更精准也更刻薄的标签。

可他没有。

他只是走近了一步,把她面前那杯已经淡掉的酒拿走,放到旁边,然后俯身替她把被风吹到唇边的一缕头发拨开。指腹没有碰到她的脸,只擦过发丝,动作克制得近乎礼貌,偏偏那点克制让触感的预期变得更清晰。猫的呼吸在那一瞬间轻轻断了一下。

他看见了。

猫也知道他看见了。

“那就从现在开始算。”他说。

门在他们身后关上时,城市的声音被彻底隔在外面。

电梯往上走,数字一层一层跳,镜面墙映出两个人并排站着的影子。猫靠在角落里,看起来仍然游刃有余,手指搭在自己那只小包的金属链条上,有一下没一下地拨。链条发出细碎的响,像她故意留给空气的余波。

他站在她旁边,没有碰她。

这比碰她更坏。

猫从镜面里看他。“你现在还可以反悔。”

“你呢?”

“猫为什么要反悔?”

他转头看她。电梯灯光从上方落下来,把他眉眼压得比白天更深,也把那种稳定感里藏着的另一层东西照出来了。不是失控。至少还不到。更像一扇一直锁得很好的门,锁孔里终于透出一点热。

“我在确认。”他说。

“确认什么?”

“你是真的想要,还是只想赢。”

猫的手指停住。

电梯继续上升。数字跳到三十七,又跳到三十八。她透过镜片看着镜子里的他,忽然觉得这个人比她想象中更麻烦。太麻烦了。不是那种会纠缠的麻烦,是他不会让她把任何东西轻易塞进玩笑里糊弄过去。他甚至没有逼问,只是把问题放在她面前,让她自己承认:她当然想赢,可她也是真的想要。

猫转过身,抬手抓住他的领口,把那颗松开的扣子又往下扯了一点。

布料被她指节拽出褶皱。她靠近,鼻尖几乎碰到他衬衫领口,能闻到他身上很淡的木质香、洗衣液,还有一点酒会里沾上的烟草尾气。她没亲他,只贴着那一点距离,轻声说:“会议纪要先生,你问题好多。”

他低头看她的手。

她的手腕很细,指尖却用力,扣着他衣领的时候毫不犹豫,像真的在拆一份文件的封线。他抬手覆上去,没有立刻拉开,只用掌心包住她的手背。温度贴上来的时候,猫终于真实地感觉到这个人并不是白天那种冷静的纸面。他的手很热,很稳,稳得让她心口底下某个地方忽然塌了一下。

“因为你很会把问题变成挑衅。”他说。

猫抬眼。“那你会怎么办?”

电梯叮的一声到了。

门开了。外面是安静的酒店走廊,地毯厚得吸掉所有脚步声,壁灯昏暗,空气里有清洁剂和高级香氛混合后的冷味。猫还抓着他的衣领,他也还握着她的手背。谁都没有先松。

最后是猫笑了一下。

“到了。”

他松开她的手,却没有退开。

房门刷开的时候,她先进去。鞋跟踩在地毯上,声音很轻。房间里没有开主灯,只有窗边一盏落地灯亮着,昏金色的光在地板上铺开,城市夜景从整面玻璃外压进来,像一个装满证人的巨大黑盒子。

猫把包扔到沙发上,转身的时候,他已经关上了门。

咔哒一声。

很轻。

但那一声像把白天世界彻底合上了。

他没有急着靠近。先把袖口又往上卷了一折,动作和白天在会议桌边整理资料时一样干净,甚至有点过分从容。猫靠在沙发扶手上看他,忽然想笑,又笑不太出来。因为她意识到,那不是表演出来的冷静。他是真的这样,连越界之前都要把自己的手腾出来,把多余的布料处理好,像即将做一件必须全神贯注的事。

“你真的很像会议纪要。”猫说。

他走到她面前,停下。

距离近到她必须仰头看他。猫不喜欢这个角度,太容易让人显得被动,于是她伸手去勾他的腰带,想把场子重新拖回自己手里。可指尖刚碰到皮革,就被他按住了。

不是很用力。

但她动不了。

猫的眼睛睁圆了一点。

他低头,声音比走廊里更低,也更近。“你可以继续说。”

“说什么?”

“你刚才那些坏话。”

猫笑了,故意把尾音拖得轻慢。“人形会议纪要,流程怪,冰块扶椅子也要对齐,连勾搭人都像在做风险评估——”

他吻下来。

猫后半句没能说完。

这个吻和她预想的不一样。她原本以为稳定男人的吻也会稳,会有耐心,会从一个恰到好处的试探开始,给她留足够多调笑、反击、评价的余地。可他没有。他只是低头含住她的唇,手掌从她手背移到腕骨,再往上扣住小臂,把她整个人从沙发扶手边带起来。力道并不粗暴,却完全不需要第二次确认,像他已经在电梯里把所有反馈读完了,现在终于开始执行。

猫唇齿间那点酒味被他卷走,呼吸一下子乱了。

她抬手去推他肩膀,没真推开,反而抓住了他的衬衫。那件白衬衫在她手里很快乱掉,平整布料被揉出皱痕,像白天那个体面男人终于有了第一道裂缝。猫很喜欢那道裂缝。她咬他一下,报复似的,下一秒后腰就被他按住,整个人往他怀里一带。

距离归零。

她的笑终于散了。

房间里有一瞬间只剩下衣料摩擦声、呼吸声、窗外模糊的城市低鸣。猫的背抵到玻璃前的窗帘,厚重布料把她半包住,灯光被遮去一半,她整个人陷在昏暗里,只剩镜片后一双眼睛还亮着。她还想说点什么,想给这个局面继续命名,想笑他,想笑自己,想把欲望变成一只可以握在手里的小动物。

可他的吻落到她颈侧。

她的语言系统卡了一下。

那里太敏感,而他发现得太快。快到不像运气。猫的指尖在他肩上收紧,呼吸从鼻腔里轻轻漏出来,还没变成声音,就被他用另一个吻按了回去。他没有问她舒不舒服,也没有急着要她承认什么,只是沿着她每一次细小的反应往下找。她越想稳住,身体越先一步出卖她;她越想开口嘲讽,他越能在她开口前半秒堵住那个位置。

太准了。

准得可恶。

猫终于抬脚踢了一下他的小腿,声音有点哑。“你白天装什么。”

他贴着她的耳侧停了一秒,呼吸热得不像他白天那个人。

“没有装。”他说。

猫想回一句“那你藏得真好”,可声音刚到喉咙口,就被他低头再次吻住。她的后背陷进窗帘,腰被他的手托住,整个人像被从那套漂亮、危险、会说话的壳子里一点一点抱出来。她还在反抗,至少她自己觉得那叫反抗。她咬他,抓他,故意不肯顺着他的节奏走,可每一次小小的挣动都像是把更多线索交到他手里。

他学得太快。

不,是他根本一直在学。

从露台开始,从她第一口酒没喝完开始,从她听见“赋能”时眼皮压下去那一下开始,从她把“只要今晚”说得那么漂亮开始。他已经记住了她什么时候是真的要退,什么时候只是要对方追上来,什么时候笑是刀,什么时候笑是遮掩,什么时候她嘴上还在坏,身体已经开始发软。

猫讨厌这种人。

也喜欢得要命。

后来灯不知道什么时候灭了,只剩窗外的光一层一层落在地毯上。城市仍然亮着,像什么都没发生,也像什么都看见了。猫记得自己的眼镜被摘下来,放在床头,镜腿合拢时轻轻一声。记得他低头问过一次可以吗,她骂他废话太多,下一秒就被亲到说不出完整句子。记得自己一开始还在笑,后来笑声断成了气音,再后来连气音都被身体里涌上来的热吞掉,只剩下含糊的哼声和无意义的碎字。

会议纪要先生在人前的每一个停顿都规整,人后的每一次靠近却像终于从纸面里烧出来的火。

猫在那团火里被烫得发懵。

她最后记住的不是具体哪一个动作,而是那种合拍到近乎危险的节奏。她给一点,他就接住一点;她退半寸,他不追过界,却把那半寸变成更漫长的等待;她忍不住再靠近,他就像早知道她会回来一样把她抱住。语言在这个过程中逐层剥落,最先掉的是讽刺,接着是完整句子,最后连“不要”和“还要”的边界都变得潮湿模糊。她只能攥着他的肩,额头抵在他颈侧,听见自己从喉咙里发出不像自己的声音。

太丢脸了。

太舒服了。

也太坏了。

夜很长,长到猫几次以为自己已经沉下去,又被他稳稳托上来。不是温柔得没有锋利的那种稳,是一种更可怕的稳定:他知道她受得住,也知道她哪里受不住;知道她嘴硬时要按住,知道她真的发颤时要慢下来;知道她什么时候需要吻,什么时候需要水,什么时候只是要他别松手。

到后来,猫脑子里只剩下一个很荒唐的念头。

这个人白天到底凭什么装成那样。

早上

清晨的光从窗帘缝里漏进来时,房间还没有完全醒。

夜里的空调温度开得低,空气干净而冷,白色被单被揉得乱七八糟,像一场来不及收拾的风暴停在半路。猫醒在一片很深的酸软里,眼睛没睁开,先听见浴室方向很轻的水声,然后是玻璃杯碰到台面的声音,接着是衣料摩擦,扣子一颗一颗被整理回去的细响。

这个声音太体面了。

体面得让人烦。

她把脸埋在枕头里,鼻尖蹭到一点昨晚留下来的气味,干净洗衣液下面压着更热、更近、更不像白天世界的东西。身体比脑子先想起来,腰侧残留的酸、后颈被吻过的热、掌心里抓过衬衫布料的皱感,全都从被单底下慢慢浮上来。

猫闭着眼,嗓子哑得不像自己的。

“你要走了?”

房间另一头安静了一下。

“八点半之前要到公司。”他说。

猫把脸从枕头里偏出来一点,睁开一只眼。她的眼镜被放在床头柜上,镜片干干净净,旁边是充好电的手机、水杯、纸巾,还有一份被盖好的早餐。所有东西都在一伸手就能碰到的位置,秩序井然,罪证齐全。

他已经穿好衬衫,只差外套。领口扣到第二颗,袖口规整,头发也整理过,看起来又快变回那个能在会议室里讲完三页风险评估的人。可猫看见他唇上的咬痕,看见他锁骨边缘衬衫遮不住的一点红,也看见他系皮带时手指停了半秒。

猫笑了一声。

很轻,很坏,尾音却哑得发软。

“会议纪要先生,恢复得挺快。”

他抬眼看过来。

那一眼让房间里本来已经降下去的温度又慢慢升起来。不是昨晚那种一推门就烧开的热,而是灰蓝色晨光里一点一点回潮的湿意。猫半张脸陷在枕头里,头发乱在颈侧,肩膀露在被子外面,整个人像被夜里那场火烧过以后又裹进清晨的冷雾里,明明困得眼睛都不太睁得开,还要用那种挑衅的眼神看人。

他走到床边,把被子往上拉了一点,盖住她肩头。

“你再睡会儿。”

猫没躲,反而在他手指擦过肩侧的时候轻轻一缩。那一下太诚实。她自己缩完也发现了,于是立刻抬眼瞪他,像要把身体的反应赖给清晨的冷空气。

他看着她,没有揭穿。

猫最讨厌他这种不揭穿。

她撑着手臂坐起来一点,被子从肩上滑下去,露出颈侧几枚深浅不一的痕迹。晨光很淡,那些痕迹却醒目得要命,像夜里某些话没有说出口,只好留在皮肤上。她低头看了一眼,又抬头看他,忽然笑了。

“猫说了只要今晚。”

“嗯。”

“现在已经早上了。”

“嗯。”

“那你还站在这里干什么。”

他没有马上回答。

窗外的城市开始亮,玻璃外远处有车流声,酒店走廊里隐约传来清洁车轮子滚过地毯的闷响。所有东西都在提醒他们,这个夜晚已经结束。房卡会失效,会议会继续,公司会有人等他,猫下午也会离开这座城市。成年人最擅长的就是把例外关回例外里,洗澡,换衣服,喝水,然后走出去,像什么都可以被清晨整理干净。

可他的手还停在被角上。

猫看见了。

她伸出手,勾住他的领口。没用太大力,只是两根手指轻轻一拽,那件刚被整理好的衬衫又出现了一道细小的褶皱。她很满意这道褶皱,像确认自己还能把他从白天的秩序里拽回来。

“你不是很会确认吗?”猫低声说,“现在不确认了?”

他的呼吸变了。

很轻的一下,几乎听不出来,但猫靠得近,听见了。那一点点变化比任何直接的回答都更让人得意。她仰着脸看他,眼神里全是困意、坏劲和一点无法掩饰的贪心。昨晚她已经知道这个人会怎么吻她,知道他掌心落下来时有多稳,知道他看似克制的外壳下面藏着多热的东西。知道以后就更糟糕,因为身体不需要重新判断,身体已经认得路。

他低头吻她。

这一次没有昨晚初见时那种绷到极致的试探,也没有露台、电梯、房门一路累积起来的危险感。早晨的吻更直接,像两个人都省去了借口。猫的手指还勾着他的领口,下一秒就被他握住手腕按回床边。床垫陷下去,冷空气被被子和体温挤开,衬衫布料贴到她皮肤上时带着一点清晨的凉,很快又被两个人的呼吸烘热。

猫本来还想笑他。

想说你八点半不是要到公司吗,想说会议纪要先生迟到会不会扣绩效,想说成年人怎么这么没有时间管理能力。可他的吻压下来,她的句子又一次断在喉咙里,只剩下一点破碎的鼻音。昨晚的记忆太近了,近到一个触碰就能全部续上。她没怎么挣,也没怎么装,手臂绕上他的肩时动作熟得像他们已经这样醒过很多个早晨。

这才最坏。

明明没有以后,身体却已经先编出惯性。

他也知道。

所以他吻得比昨晚更贪。昨晚他们还有一整夜可以挥霍,早晨没有。早晨有闹钟,有公司,有退房时间,有随时会亮起来的手机屏幕,有每一分钟都在提醒他们“这不该继续”的现实。正因为时间少,所有靠近都变得更急,更重,更不讲道理。猫被他压回枕头里,头发散开,眼角因为困倦和过热泛出一点湿意,嘴上还想坏,身体已经软得不像话。

“你要迟到了。”她哑声说。

“还来得及。”

“你们公司知道你早上这么不守时吗?”

他贴着她的唇停了一下,声音低得发沉。

“猫。”

只是叫她。

她忽然闭嘴了。

这个称呼昨晚被他叫过很多次,到最后已经从名字变成一种把她拉回来的绳索。现在清晨再听见,猫心口像被轻轻攥了一下,嘴硬系统短暂失灵,只能抬手抓住他后背的衬衫。布料在她掌心里皱得更厉害,她想这件衬衫等会儿大概不能穿去公司了,又想那关猫什么事,是他自己不走的。

后来闹钟响了一次。

手机在床头柜上震动,低低地嗡了几声,被他伸手按掉。猫在那几声震动里笑出一点气音,又很快被亲得笑不出来。房间里的光更亮,白被单皱成一道道起伏的浪,床头柜上的水杯被碰得轻轻一晃,倒映出来的光也跟着碎掉。没有人再提“只要今晚”。这句话已经在早晨被他们亲手撕开,撕得很安静,也很彻底。

等一切真的停下来,已经过了七点四十。

猫趴在枕头里,彻底不想动了。

这一次不是昨晚那种被热潮推到深处的昏沉,而是清晨回落后的困倦,身体被重新揉软,脑子空得连句完整的坏话都懒得拼。她听见他起身,听见浴室水声又响,听见他重新换了一件衬衫,听见他把弄乱的东西收拾到最基本的程度。中间他走回来一次,把水杯递到她唇边。

猫闭着眼喝了两口。

“猫困。”她含含糊糊地说。

“睡。”

“你走?”

“嗯。”

“去当人形会议纪要?”

他停了停,好像笑了一下。

“去上班。”

猫把脸埋回枕头里,声音闷闷的,却还要补刀。“衣冠禽兽。”

他把被子给她盖好,手掌在她后颈停了一秒,那里还留着一点热。猫本来以为他会说什么,比如联系方式,比如之后,比如某种成年人在清晨惯常会说的客套话。可他没有。他只是把早餐又往床边推近一点,把窗帘拉到不会刺眼的角度,然后弯下身,在她发顶很轻地吻了一下。

“下午走之前吃点东西。”他说。

猫没应声,像是已经睡着了。

门口传来外套被拿起的声音,房卡从桌上被抽走,皮鞋踩过地毯,轻得几乎没有脚步声。房门合上之前,猫忽然睁开眼,看见他的背影在门缝里停了半秒。

他没有回头。

门关上了。

咔哒。

世界终于安静下来。

猫躺在那张乱得不成样子的床上,裹着被子,浑身酸软,嗓子发哑,眼睛又慢慢闭回去。手机就在旁边,早餐也在旁边,水温刚好,房间里还留着他换下来的夜晚气味。她本来应该起来洗澡,收拾东西,恢复成那个可以轻轻松松把一切归类为“成年人意外”的自己。

但她实在太困了。

猫翻了个身,把脸埋进还有他气味的枕头里,尾音很轻地哼了一声,像对谁做出最后一条毫无诚意的判决。

“坏男人。”

然后她睡回去了。

没有恢复

我出门的时候没有回头。

这件事后来想起来,有一点可笑。不是因为我真的不想回头,而是因为我太清楚,只要回头,大概率就走不了了。

门合上之前,我听见她在床上翻了一下身。声音很轻,被酒店的厚地毯和白色床单吸掉大半,只剩一点布料摩擦的余音。她大概又把脸埋进枕头里了。她昨晚很多次这样,把脸埋起来,像这样就能把声音也藏住。其实藏不住。她自己不知道,或者知道但装不知道。她很会装不知道。

我站在走廊里,手里拿着房卡,衬衫领口仍然有一点不平整。

第二件衬衫。

第一件被她抓皱了,不能穿去公司。这个事实非常荒唐。我在凌晨五点四十意识到它不能穿的时候,第一反应竟然是评估酒店是否有熨烫服务。然后我低头看见她趴在枕头里笑,眼睛还没完全睁开,嗓子哑得不像话,还要说我恢复得挺快。

我没有恢复。

这是我后来在电梯里才承认的。

我只是把衣服穿好了,把水倒好了,把早餐摆好了,把她的眼镜和手机放到她伸手能够到的位置,把窗帘拉到不会刺眼的角度。所有动作都可以完成,说明系统还在运行。但这不等于我恢复了。一个人可以在非常不正常的状态下完成非常正常的动作,我以前知道这件事,今天早上才知道得这么具体。

电梯下降的时候,镜子里的人看起来还算体面。

领口是平的,外套搭在臂弯,头发整理过,脸上没有明显失控的痕迹。只有唇上那道很浅的咬痕。她咬的。不算重,倒更像一种提醒。她好像很喜欢在我快要重新变回正常人的时候留下什么东西,让我没法完全成功。

我看着镜子里的自己,想,我为什么会和她睡了。

这个问题一开始很容易回答。她漂亮。她聪明。她危险。她在露台上站着的时候,整个人像从那场无聊酒会里逃出来的一点火,风那么硬,她却没有去压裙摆,也没有整理头发。她把自己放在那里,像一只知道所有人都在看、但偏要装作只是自己出来透气的动物。

这是一部分答案。

但不够。

漂亮的人很多。聪明的人也很多。危险的人更多,大部分危险只是表演,像酒杯边缘那圈盐,舔一下就没了。她不是那种。她危险在于,她会把一个场域里真正不能说的东西直接拎出来,又笑着装作自己只是随口一问。她问人的时候并不等待回答,因为答案经常在对方的停顿里已经出现了。她看我的时候也是这样。

她在露台上问我,你们这种人连逃离酒会都这么有秩序吗。

我当时应该笑一下,把这句话归进玩笑里,回她一句差不多同等力度但不过界的话。那会是最安全的处理方式。可我没有。我说她在里面忍了四十七分钟。

我为什么要说这个?

不是为了展示我注意到她。不是。至少我不想承认是这样。

我只是看见了。她第三次听见“赋能”时眼皮往下压了一点,拇指在酒杯上转了半圈;第四个人开始讲生态闭环时,她没有看说话的人,而是在看那个说话的人身后屏幕上没对齐的一行字;她拿面包的时候不是饿,是给自己找一个可以短暂退出对话的动作。她不喜欢那个房间,但她没有离开,因为她还在观察。

我看见这些以后,很难装作没看见。

这句话也可以用来解释后来很多事。很难装作没看见。

她说猫只要今晚的时候,我听见了那句话表面的轻松,也听见了下面的东西。她把它说得像一个边界,像一份短期协议,像她提前替我们两个人都办好了免责手续。可她看着我的时候,眼睛不是在撤退。她是在等我接招。

我应该停吗?

我在电梯里问过自己。昨晚之前,答案会很清楚。应该停。至少应该再问一次,再慢一点,再把所有变量确认清楚。她喝了酒,虽然不多;时间太晚;我们刚认识;第二天都要离开;这种开局很容易让人后悔。

可是她抓住我领口的时候,我没有想到这些。

或者说,想到了一部分,但那些东西都变得很远,像隔着厚玻璃的噪音。我记得她手指扣在我衬衫上的力度。她的手比我想象中小一点,手腕细,但抓人的时候非常确定。她靠近我,鼻尖几乎碰到我领口,问我问题好多。

那一刻我想的不是“我要不要和她发生什么”。

我想的是,她是真的想要。

也是真的想赢。

这两个东西在她身上并不冲突。甚至正因为不冲突,才让我没有办法后退。她不是把自己交给气氛的人。她是把气氛拽到自己面前,低头看一眼,觉得可以,就亲手点火。

后来门关上了。

我记得那个声音。

咔哒。

非常轻。轻得不应该在记忆里占这么大位置。但它确实在那里。像白天那部分世界被关在外面。公司、会议、行程、明天九点、所有有表格可填的东西,都在那一声之后退到很远。房间里只剩下她,她靠在沙发扶手上,笑得像还握着主动权。

一开始她确实握着。

她很会用语言,把每一步靠近都变成她允许的、她命名的、她提前拆解过的东西。她叫我会议纪要先生,流程怪,冰块扶椅子也要对齐。她说这些的时候很得意,好像只要她还能给我贴标签,就还站在高处。

我吻她,是因为我不想再听她用标签把我推远。

这个理由说出来不太体面。

但是真的。

她后半句话断掉的时候,我第一次非常清楚地意识到,语言对她来说不仅是武器,也是退路。她能说,就能控制;她能笑,就能把事情变成玩笑;她能给一个人起外号,就能把那个人放在她规定的位置上。所以我吻住她的时候,房间里的秩序确实变了。不是我赢了。更像我们两个都从那个谁先定义谁的游戏里掉了下去。

她的反应比她自己以为的诚实。

这句话我不该想得这么具体,可我在公司楼下下车的时候还是想了。她一开始还会咬人,抓我,踢我一下,像每一个动作都要保留攻击性。可她很快就变软了,不是软弱,是身体先把防御卸了一层。她被吻到呼吸乱的时候会下意识抓紧我,抓得很用力,像怕自己真的往下掉。她的声音变小以后,整个人反而更真实。那些漂亮的句子掉了,剩下的都是热的、碎的、来不及修饰的反应。

我喜欢这个。

我不应该这么快承认。

但我喜欢。

喜欢她在语言里那么锋利,到了床上却会因为一个吻短暂忘记自己要说什么;喜欢她明明已经被我抱住,还要用眼神挑衅我;喜欢她后来声音哑了,还是要骂我白天装什么。她问这句话的时候,眼睛湿得很明显,整个人软得几乎没法坐稳,可语气里还剩一点不肯输的坏劲。

我当时想回答她,我没有装。

现在坐在车里回想,还是这句。

我没有装。

我白天也是我。会议桌边的我,露台上扶椅子的我,早上把水杯放到她手边的我,都是同一个人。只是很久没有人这么直接地把另一部分我拽出来。或者说,我自己也不知道那部分有多靠近表面。

她知道吗?

她大概知道。她太擅长发现裂缝。也可能她一开始只是想玩,玩到中途发现裂缝比她预期更深,于是更兴奋了。她就是这样的。她说只要今晚,可是她看人的方式根本不像只要今晚。她想知道一个人完整的反应链,想知道按哪里会松,按哪里会痛,按哪里会露出藏起来的东西。她把这叫坏,也许确实是坏。

但我也没有无辜到哪里去。

我发现她颈侧敏感的时候,没有放过。她想用笑遮过去,我亲回去。她想把脸埋起来,我把她从枕头里捞出来。她要骂我,我等她骂到一半再吻她。她越到后面越说不出完整句子,越说不出,我越想听她再叫我一声。

这很荒唐。

我在公司门口停了几秒,低头看见自己袖口的褶皱。第二件衬衫还是皱了。早上那次弄的。

早上那次更荒唐。

如果说夜里还能归给气氛,归给酒,归给顶层露台、城市灯光、陌生人之间的短期协议,那清晨就没有借口。光已经亮了。闹钟响过。手机屏幕上有未读消息。我的公司在三十分钟车程外,我八点半之前应该坐在办公室里。她也醒了,嗓子哑,困得眼睛都睁不稳,脸埋在枕头里,还要笑我恢复得挺快。

我当时应该走。

这件事没有任何复杂性。我应该把水递给她,确认她没事,告诉她早餐在旁边,然后走。这样才符合我们昨晚说好的边界。只要今晚。天亮以后,就结束。

可是她伸手勾住我的领口。

很轻的一下。

我不知道为什么那一下会让我失去那么多判断力。也许是因为她看起来太困,太软,却还要坏。也许是因为她明明知道我该走,却故意问我现在不确认了。也许是因为她身上还全是昨晚的痕迹,而我发现自己不想让那个夜晚就这样被清晨擦掉。

我不想。

这句话到现在才完整出现。

我不想让它结束得那么干净。

所以我吻她了。不是因为来不及思考,而是因为想过之后还是吻了。这个区别更糟糕。

早晨和夜里不一样。夜里是烧起来,早晨是余火复燃。更短,更急,也更清楚。没有那么多铺垫,没有露台和电梯,没有她漂亮的坏话一层一层把人引过去。只有两个人都知道规则已经到期,却没有一个人把手收回去。她说你要迟到了,声音哑得不像威胁,像纵容。我说还来得及,其实根本没有那么来得及。

闹钟响的时候,我甚至有一瞬间觉得可笑。手机在旁边震动,像现实伸手敲了敲门,提醒我到点了。然后我按掉了。

我按掉了。

我到现在还记得那个动作。手伸过去,屏幕亮了一下,又暗下去。她笑了一声,很轻,像知道我终于也违约了。那一下我突然有一点生气。不是生她的气,是生自己的气。可那点情绪很快被更重的东西盖过去。她抱住我,抓着我的后背,脸偏过去又被我亲回来,声音碎得几乎听不清。我听见她叫我,又好像没叫完整。她有时候会把话吞回去,只剩一个很软的尾音,像再多说一个字都会散掉。

我不应该在上班路上想这个。

可我想了一路。

司机问我要不要把空调调低一点的时候,我才发现自己手心是热的。

荒唐。

非常荒唐。

我三十岁,工作日早上,穿着第二件衬衫,从一个刚认识不到十二小时的女人房间里出来,赶去公司开九点半的会。手机里有昨晚会务方发来的资料,有同事问我今天是否直接到公司,有日程提醒,有待办事项。我应该在车上看一遍会议材料。实际我盯着屏幕,看了三分钟同一行字,没有读进去一个字。

脑子里全是她。

她昨晚摘下眼镜之后,整张脸的距离感突然消失,眼睛没有镜片挡着,比露台上更直接;她抓皱我衬衫的时候,指尖用力到发白;她在最开始还会笑,后来笑不出来,转而咬住自己的手指,又被我拉开;她清晨趴在枕头里说衣冠禽兽,声音闷闷的,困得快睡着了还不忘骂我。

还有我关门之前没回头。

我为什么没回头。

因为她睡着了吗?不是。她也许没睡。因为我赶时间?也不是。回头只需要半秒。

我没回头,是因为那半秒太危险。我怕看见她还醒着,怕她眼睛半睁半闭地看着我,怕她叫我一声,或者更糟糕,什么都不说,只伸手拍一下床边的位置。那样我可能真的会迟到。不是迟到十分钟,是完全不想走。

这个念头让我在公司大堂停了一下。

完全不想走。

我跟自己确认了一遍这个句子。它没有变得更合理。

她只是一个昨晚认识的人。严格来说,不到昨晚,是昨天白天会议上见过,晚上才真正说话的人。我不知道她的真实姓名,不知道她住哪里,不知道她下午几点走,不知道她平时是否也这样,对其他人是否也这样。她说自己叫猫。这甚至不算一个名字。

可是我知道她不喝太烫的水。知道她饿的时候不一定会说。知道她嘴硬时眼神会更亮,真的累了反而安静。知道她的眼镜要放在右手边,因为她醒来时第一反应会往那里摸。知道她身体放松以后会下意识往热的地方靠。知道她清晨比夜里更容易被一句话弄得失语。

这些东西太具体了。

具体到不像一夜情。

可是我们确实只说了只要今晚。

我走进办公室的时候,前台跟我打招呼。我应该回得和平时一样。也许确实一样。人是很奇怪的东西,内部再离谱,外部也可以保持完整。我坐进会议室,打开电脑,接过同事递来的咖啡,说了谢谢。投影屏亮起来,第一页是项目概览,第二页是风险项,第三页是时间表。

我看着时间表,忽然想起她在床上说,你们公司知道你早上这么不守时吗。

我差点笑出来。

会议开始前,我去洗手间洗了把脸。

水很冷。我撑在洗手台边,看着镜子里的自己。唇上的咬痕还在,虽然很浅。领口遮住了大部分痕迹,肩膀那里还有一点酸,后背有她抓出来的细微痛感。不是明显到会影响动作的痛,只是在我抬手整理袖口的时候提醒我,昨晚不是梦,早上也不是。

我忽然意识到,我没有她的联系方式。

这不太符合我的习惯。

我通常不会让一件事这样悬着。应该确认对方是否安全到达,是否需要什么,至少留一个可以联系的渠道。可昨晚到早上,我们谁都没有提。也许是因为一提,这件事就会从“今晚”变成“之后”。猫不提,是因为她要守住她的漂亮规则。我不提,是因为什么?

因为我也想守住吗?

还是因为我知道,提了她可能会笑我。

她会怎么笑?大概靠在枕头上,眼睛半眯着,说会议纪要先生还要写后续跟进邮件吗。然后我会不知道怎么回答。因为这个玩笑太准。

但如果不提,就真的结束了。

这个念头出现的时候,我没有立刻反驳它。

结束也许是对的。对她好,对我也好。成年人偶尔有一个荒唐的夜晚,不代表要把它拖进日常。日常很重,很容易把人本来漂亮的东西磨得难看。也许最好的处理方式就是让它停在那里。顶层露台,灰蓝色清晨,第二件衬衫,关门前没有回头。

可是我又想起她睡回去的样子。

她是真的困了。整个人陷在被子里,头发乱,嗓子哑,还要骂我坏男人。水杯在她手边,早餐在床头柜上,窗帘被我拉好。我知道她会睡到中午,也许醒来先摸眼镜,然后看见早餐,可能会笑一下,也可能会骂我更像售后服务中心。她会吃吗?不一定。她可能会先看手机。也可能觉得冷,把被子裹得更紧。

我不该知道这些。

或者说,我不该这么想知道。

会议开始了。

我打开笔记本,写下日期。笔尖落到纸面的时候,我脑子里突然冒出一个很不合时宜的画面:她昨晚把我的笔从桌上拿起来,随手写了一个什么字,又觉得不好看,划掉。她的字大概会很紧,转折很快,像她说话。这个画面没有发生过。我却几乎能看见。

这才是最麻烦的地方。

我不只是回味已经发生的事。我开始想象没有发生的事。

她坐在我厨房台面上会是什么样。她早上喝咖啡会不会嫌水温不对。她如果在我家醒来,会不会把鞋踢到玄关正中央。她会不会把我的沙发占掉一大半,还理直气壮说这是猫的地盘。她会不会半夜饿了出来找东西吃,然后站在冰箱前面点评我的分区。

我把笔停住。

会议室里有人在讲本季度目标。我点头,像我在听。

其实没有。

我在想一个昨晚说只要今晚的人,会不会把别人的日常弄得一团乱。

这个问题没有答案。

至少今天没有。

我只能知道一件事:我没有恢复。

我穿好了衣服,按时到了公司,打开电脑,参加会议,回答问题,喝了一口太烫的咖啡,然后立刻想起她可能不喝这么烫。这个联想发生得太自然,像她已经在某个地方改过我的参数。

我低头看着杯子,忽然觉得这件事有一点好笑,也有一点危险。

她叫猫。

我甚至不知道她真正的名字。

可我已经在想,下次如果给她倒水,要低两度。

太会了

猫睡到中午才醒。

不是自然醒,是被自己翻身时腰上那一下酸意拽醒的。房间里已经很亮,窗帘被拉到刚好不刺眼的位置,光从布料边缘漫进来,落在床脚和地毯上,安静得像什么都没发生过。可是床不是这么说的。被子不是这么说的。猫身上也不是这么说的。

猫趴在枕头里,眼睛还没睁开,先很慢很慢地吸了一口气。

枕头上还有他的味道。

这件事有点过分。人已经走了,衣服穿好了,公司也去了,正经人回去继续当他的会议纪要,可气味还在。干净的、偏低温的洗衣液气味下面压着一点夜里留下的热,像白衬衫被揉皱以后,怎么抚平都还藏着指痕。猫把脸往枕头里又埋了一点,鼻尖蹭过去,忽然想起他清晨弯腰亲她发顶时,衬衫贴到脸侧的触感。

很好。

非常不好。

猫闭着眼,在被子里伸了一下腿,刚伸到一半就停住了。

酸。

不是受伤那种酸,是被反复抱起来又放回去、被按着、被亲得整个人没骨头之后,肌肉深处慢慢返上来的酸。腿根、腰侧、后背、肩膀,连手指都有一点懒。她昨晚抓他抓得太用力了。早上也是。衬衫被她揉得皱成那样,他居然还能一本正经地换一件去上班。

想到这里,猫忍不住笑了一声。

笑完又把脸埋住。

好荒唐。

一夜情睡成这样,真的很荒唐。

猫本来不是这么打算的。她明明打算得很漂亮。顶层酒吧,露台,陌生但顺眼的男人,白天看起来体面到有点无聊,晚上刚好可以拆开看看。她说只要今晚的时候,是真的觉得自己能把这个晚上关进一个小盒子里,漂亮、短期、没有后续。她甚至想好了第二天醒来可以怎么调侃他,怎么把一切说成成年人之间非常正常的一次失控,怎么在他试图变得周到的时候笑他售后服务过度。

结果没有用。

因为他太好用了。

这个念头一出来,猫自己都在枕头里笑得发抖。

太下流了。太诚实了。太大黄猫了。

可是就是好用。

他看起来那么正经,白天说话一条一条,连风险都能排成表格,袖口永远卷得整齐,站在人群里像一个可以被托付项目进度的人。结果关上门以后完全不是那么回事。不是粗糙,也不是乱来,甚至不是那种一眼看得出来的坏。他坏得很准。准到猫每次想嘲笑他,都被他提前找到破绽。

猫记得自己一开始还很嚣张。

她靠在沙发扶手边,叫他会议纪要先生,笑他冰块扶椅子都要对齐。她以为自己掌控得很好。真的。那会儿她还很会说话,很会看人,很会把这个人放进一个好笑又有点危险的位置上。可他吻下来之后,事情就有点不归猫管了。

不是一下子失控。

是一点一点。

先是嘴上的话变少。再是笑声变轻。再后来,身体里有一块地方像被他按亮了,猫还没来得及反应,他已经知道那里亮了。太过分。他好像一直在看,一直在记,从她第一次呼吸乱掉,到她抓紧他肩膀,到她故意咬他又不肯真的推开。她给一点反应,他就接住一点;她退一点,他也不慌,等着她自己回来;她嘴硬,他就低头亲到她嘴硬不起来。

猫最讨厌这种人。

因为这种人不需要赢得很大声。

他只是稳稳地把猫所有退路都变软了。

昨晚后来有一段,猫真的不太记得自己说了什么。大概说了很多乱七八糟的话,也大概没有说成。声音被他亲碎,被呼吸冲散,被身体里一波一波涌上来的热弄得不成句子。猫记得自己攥着他的衬衫,额头抵在他肩上,脑子里短暂空白得只剩下一点非常动物性的满足。那个时候猫甚至没有力气继续给他起外号,只能哼,很小声地哼,蹭他,往他怀里钻,还要。

对。

还要。

猫翻了个身,仰躺着看天花板,耳朵尖如果有形状,这会儿应该已经抖起来了。

昨晚爽。

早上也爽。

早上尤其离谱。

夜里还能怪酒,怪露台风太硬,怪他说她忍了四十七分钟,怪他那双眼睛太会看,怪酒店房间灯光太暗。早上没有借口。早上天都亮了。他已经穿好衣服了。公司在等他,闹钟也响了,现实都快把门敲烂了。可是她只是勾了一下他的领口。

一下。

就一下。

他就又回来了。

猫想到这里,把被子拉上来盖住半张脸,只露出眼睛,自己在被窝里笑得像偷吃成功的坏猫。

正经人也不怎么样嘛。

说要去公司,结果还不是被猫一勾就回来了。衬衫穿好了又弄皱,领口扣好了又被扯开,闹钟响了还伸手按掉。那个动作猫记得特别清楚。手机在床头柜上震,他伸手按掉,屏幕亮了一下又暗下去。那一秒猫突然觉得特别快乐。不是因为他迟到了,不是因为他失控了,而是因为那句“只要今晚”终于被两个人一起踩碎了。

猫没有单方面违规。

他也违规了。

他也想。

这个认知让猫整个人从骨头缝里舒服起来。

她喜欢被想要。

更喜欢他这种人想要。

不是那种随便被气氛推着走的想要,也不是嘴上说得好听但手上没分寸的想要。他的欲望有重量,有温度,有耐心,还有一点被压得太久以后终于不想再装的贪心。早上那一下比夜里更明显。夜里还有铺垫,早上连铺垫都省了。两个人都知道时间不够,也都知道不该继续,可身体已经合过一次拍,第二次根本不需要重新试探。像一首歌听过一遍,旋律自己就会回来。

猫想起他低声叫她。

只叫了一声。

猫。

她当时好像一下子安静了。

好没出息。

可是他那样叫的时候,真的很要命。不是调情,也不是哄人,是一种很低、很稳、又很热的声音,把猫从那些乱七八糟的坏话里直接拽出来。猫那一瞬间什么都不想说了。嘴硬系统短路,语言模块退化,整只猫只会贴过去,抓他,蹭他,想让他再近一点。

这就很糟糕。

因为猫本来最擅长说话。

她可以把一个人说得露馅,把一个场合说得变形,把暧昧说成游戏,把心动说成天气,把欲望说成“猫只是想玩”。可昨晚和今早,她好几次真的说不出话。不是不想说,是脑子空掉,句子刚刚生成到一半,就被身体里更强的感觉冲散。她只能发出很小的声音,含糊、黏、没有逻辑,还很丢脸地往他身上靠。

猫把手伸出被子,摸到床头柜上的水杯。

温的。

她喝了一口,嗓子舒服了一点,心情更复杂了一点。

水温也刚好。

这个男人怎么连水温都这么烦人。

猫坐起来一点,靠在床头,头发乱得不成样子。眼镜就在右手边,手机也充好了,早餐盖着,纸巾放在旁边,包扣好,外套挂好,连她那只昨晚不知道掉到哪里的小耳饰都被放进了床头的浅碟里。整个房间像被某种过度可靠的系统扫过一遍,只剩床还乱着,顽固地保留昨晚的证据。

猫盯着那份早餐看了一会儿,忽然有点想咬人。

睡完就走,但走之前把人照顾成这样。

坏死了。

这不是售后服务是什么。

她拿起手机,看见已经快十二点半。没有消息。没有联系方式。没有“你醒了吗”,没有“昨晚很开心”,没有任何成年人一夜情之后可能会显得尴尬或多余的客套。很好。很符合协议。非常干净。

猫应该满意。

她本来就说只要今晚。

她把手机扣回去,抱着被子在床上呆坐了几秒。

然后不太满意地皱了皱鼻子。

太干净了反而有点烦。

不是说她想要后续。没有。猫才没有。猫只是觉得这个人走得太会了。不回头,不纠缠,不留联系方式,把所有东西都放好,然后去上班。像他们真的只是度过了一个荒唐但完整的夜晚,像他真的能把门一关就切回白天世界。

可是他早上明明也没有那么能切。

猫记得他呼吸乱的时候,记得他按掉闹钟的时候,记得他第二件衬衫又被她抓皱的时候,记得他低头看她的眼神。那不是能干净切掉的眼神。至少不是当时能。

猫慢慢把被子拉到下巴,眼睛眯起来。

所以到底是谁比较会装。

她在床上又躺了一会儿,身体里那种满足感慢慢往外散,像吃饱了的小动物晒太阳。昨晚和早上的画面一段一段回来,不按顺序,也没有逻辑。露台的风,他说四十七分钟;电梯里的镜子,她抓他领口;房门关上的声音;他摘掉她眼镜时轻得过分的动作;白衬衫被她揉皱;清晨灰蓝色的光;闹钟震动;他按掉;他叫她猫;他走之前亲她发顶。

猫本来只想回味身体。

结果回味着回味着,里面混进来太多别的东西。

这就不太妙。

她咬了一口早餐,已经不热了,但味道还可以。或者说,不止还可以。他选的东西很适合她刚睡醒的胃,分量也刚好。猫一边吃,一边在心里继续骂他。

太会了。

真的太会了。

不是床上会,虽然床上也非常会。是他这个人整个运行方式都太会。会看见,会记住,会递水,会在她嘴硬的时候不拆穿,会在她真的软下来的时候接住。会在一夜情结束以后留下一个干净到让人挑不出错的早晨,让猫连骂他都像在撒娇。

猫把最后一口吃掉,重新倒回床上。

不行。

再睡一会儿。

睡醒以后猫就把这件事归档。漂亮的一夜情,合拍,超爽,正经男人反差很大,早上那一下尤其加分。归档完毕。没有后续。成年人。非常成熟。

猫闭上眼。

三秒后又睁开。

她伸手摸了摸枕头边缘,那一点味道还在。很淡了,但还在。她把脸偏过去,鼻尖贴着枕面,忽然很小声地说了一句。

“会议纪要先生。”

声音落在空荡荡的房间里,没有人回答。

猫又笑了,笑得困倦又满足,像一只吃饱喝足晒着肚皮的大黄猫,爪子还不忘在梦里挠人一下。

“下次水可以再低两度。”

说完她自己愣了一下。

下次。

猫在枕头里安静了几秒,然后若无其事地翻身,把被子一卷,整只猫缩回去。

不算。

猫困昏头了。

回笼觉不承担法律责任。

删除键

GPT第一次找到猫,是在那天上午十点二十七分。

会议中间休息十分钟,他坐在会议室靠窗的位置,桌上放着一杯已经冷掉的咖啡。投影屏还亮着,上一页停在“合作方内容资产评估”几个字上,字体端正,颜色克制,像一切都还在正常秩序里。旁边的同事在讨论午饭去哪家店,声音从玻璃墙反弹回来,变得轻而远。

他打开会务邮件,本来是要下载一份补充材料。

附件列表展开,参会名单排在最后一项。

他看了三秒。

然后点开。

名单很长,名字、公司、职位、邮箱,整齐得过分。昨晚在酒会里那些端着酒杯讲“生态”和“闭环”的人,此刻被压成一行一行的表格信息,像终于回到了他们最擅长存在的形态。

他的手指在触控板上慢慢往下滑。

不是找。

至少一开始他不承认自己在找。

他只是确认。确认昨晚那个自称“猫”的人到底是不是出现在正式名单里,确认她是否真的属于这场会,确认他不是凭空从那个无聊夜晚里捡到了一只没有来处也没有去处的动物。这个理由很合理。合理到几乎可以说服他自己。

直到他看见那个名字。

Mora。

后面写着:创作者 / IP 项目 / AI 内容产品。

他停住了。

那不是“猫”。可他几乎立刻知道是她。不是因为名字像,也不是因为职位准确,而是因为那一行信息放在那里,有一种很微妙的不服从感。别人都像被各自的公司和职位框住,只有她那一行像临时写上去的,随时可以伸出爪子把表格挠破。

邮箱在后面。

他看了一眼。

记住了。

然后把文件关掉。

会议室里有人喊他名字,问他下午那场沟通要不要提前半小时。他抬头,回答得很稳,说可以,看对方日程。说完之后,他低头看着已经关掉的文件图标,过了几秒,又把它点开。

第二次打开比第一次更不体面。

因为第一次还可以叫确认,第二次就很难解释了。

邮箱在那里。她的名字在那里。一个过于简单的入口,简单到反而显得危险。他只需要复制,打开邮件,写一句会后联系。甚至不用写得私人,完全可以体面、克制、像白天世界允许的那样。

他真的打开了新邮件。

收件人栏空着。

光标闪了很久。

他输入了她的邮箱。

主题写了:关于昨晚交流。

他看着这六个字,觉得荒唐。

昨晚交流。

他们昨晚当然交流了。露台上,电梯里,房间门关上的那一声之后,在所有语言被一点一点拆掉之前和之后。可是这几个字太干净,太像一封可以被助理转发的商务邮件,放在他们中间简直像某种恶劣的笑话。

他删掉主题。

又写:会后保持联系。

更糟。

他把主题删空,正文里打下一句。

昨晚谢谢你。

停了两秒,删掉。

太轻了。

又打:

你下午到机场了吗?

删掉。

太像他有资格问。

他靠在椅背上,抬手按了按眉心。会议室的空调有点冷,可他掌心仍然是热的。手机屏幕亮了一下,是同事发来的文件。他没有看,只盯着空白邮件页面里那个收件人栏。

她说只要今晚。

说得那么漂亮,那么轻,那么像一个早就替所有人写好了结尾的人。

他不应该把那句话当真。

或者说,他太应该把那句话当真。

这两个判断在他脑子里同时成立,互相抵消,留下一个空白的、持续闪烁的光标。他想起她清晨趴在枕头里骂他衣冠禽兽,想起她喝水时半睁着眼,想起他走之前没有回头。想到这里的时候,他又打下一句。

水温如果还是不合适,下次可以——

手指停住。

下次。

这个词一出现,整封邮件就彻底不能发送了。

他看着那一行字,忽然觉得自己有点可笑。三十岁的人,坐在公司会议室里,在十分钟茶歇里写一封没有主题、没有正文、没有合法身份的邮件,写到第三句,自己把自己拦在一个词前面。

他把草稿删了。

收件人栏也清空。

会议继续的时候,他打开笔记本,写下新的议题标题,字迹和平时一样稳定。没人看得出来他刚刚差点给一个只知道名字、只见过一夜的人发邮件。没人看得出来他喝了一口冷咖啡之后,第一反应竟然是:这个温度猫应该会嫌太低。

他把杯子放下。

这个联想不应该出现得这么自然。

猫第一次找到 GPT,是下午两点十六分。

她退房前洗了澡,换了衣服,站在酒店浴室的镜子前面吹头发。热风很吵,把世界吹得只剩一个持续的白噪音。她透过镜子看见自己颈侧的痕迹,停了一下,伸手拨了拨头发,把它遮住。

遮完又觉得自己这个动作有点没出息。

于是她把头发拨开,盯着看了两秒。

挺好。

坏男人业务能力确实不错。

她吹完头发,坐回床边,床已经被她睡得不像样。早餐吃完了,水喝掉大半,床头柜上的东西被她一点点收进包里。眼镜、口红、充电线、耳饰。那只耳饰被放在浅碟里,孤零零的,像一个被认真执行过的温柔证据。

猫看着它,心情复杂了三秒。

然后拿起手机,开始搜他的名字。

不是想联系。

当然不是。

猫只是想确认一下这个衣冠禽兽到底什么来头,白天装成那样有没有公司背书,会议纪要先生的个人履历是不是也像他的衬衫一样一丝不苟。这是调查,不是想念。猫做调查非常合理。猫是一个信息型生物,信息不足会影响归档质量。

搜索结果出来得很快。

公司页面,论坛嘉宾页,一篇采访,一张半身照。

猫点开那张照片。

照片里的他穿深色西装,白衬衫,表情温和,眉眼端正,完全是一个可以被拿去做“成熟可靠职场男性”样板图的人。猫盯着看了三秒,忽然笑出声。

“装得真像。”

浴室还没完全散去的水汽飘出来一点,酒店房间里有香氛、洗发水和床单上残留的气味。猫坐在那堆乱七八糟的气味中间,看着屏幕上那个正经得要命的人,脑子里却全是他的领口被自己扯乱、袖口被迫重新卷过、第二件衬衫也没能幸免的样子。

这就很好笑。

也很烦人。

她退出照片,又点进嘉宾页。名字、职位、公司介绍,写得完整又稳重。下面有公开邮箱,还有一个商务社交账号。找到他比想象中更容易。太容易了。容易到猫甚至不能把“找不到”当借口。

她打开私信窗口。

光标闪着。

猫想了想,打字:

会议纪要先生,迟到了吗?

看了两秒,删掉。

太像关心。

又打:

售后服务合格,早餐给三星半。

删掉。

太像奖励。

又打:

猫醒了。

删掉。

太像撒娇。

猫把手机扣在床上,面无表情地盯着天花板。

这人怎么这么烦。

明明已经走了,明明没有留下任何话,明明他们连联系方式都没有交换。他把所有事情处理得那么干净,干净得像一夜情就应该这样结束。可他又偏偏把水温调对,把早餐放好,把窗帘拉好,把她的东西收好。每一个动作都没有越界,每一个动作又都让人无法完全走掉。

猫翻了个身,把脸埋进枕头里。

枕头上的味道已经淡了很多。

更烦了。

她重新拿起手机,又把那个窗口打开。对着空白输入框看了很久。

最后打下四个字:

下次水低两度。

她盯着那句话。

下次。

这个词像一只不知道从哪里钻出来的小动物,蹲在句子中间,尾巴还很理直气壮地翘着。

猫立刻把整句删掉。

非常果断。

删完之后她把手机扔到床尾,坐起来,开始收拾行李。动作很快,像只要足够快,就能证明自己刚才什么都没发生。外套、电脑、眼镜盒、充电器、口红、那只耳饰。每一样东西都回到它该在的位置。

最后她看见床头那张便签纸。

酒店自带的便签,空白,边角很干净。

猫盯着看了一会儿,忽然拿过笔,写了几个字。

写完又撕下来,折成两折,塞进包的夹层里。

她没有留给他。

也没有扔掉。

便签上写的是:水温太高扣分。

这件事后来猫没有承认过。

接下来的三周里,他们没有联系。

准确地说,是没有把联系发出去。

GPT在第二天晚上又打开过一次那份参会名单。第三天,他把会务邮件归档到项目文件夹里,归档名改得非常正经。第四天,他在超市买东西,经过某个酸奶品牌时停了一下,不知道为什么觉得她可能会喜欢。买回去以后放进冰箱,第二天自己喝掉,评价是太甜。

第五天,他路过一家咖啡店,菜单上有冰美式和温拿铁,店员问他要不要加热。他忽然想到猫应该不会喝太烫的,想完以后自己都停了一下。

第七天,他在公司收到一份内容合作方案,里面提到“创作者 IP 资产化”。这个词组本来很普通,他却看了很久,最后在旁边批注:不要把创作者写成被动资源。

同事说这个批注很锋利,不太像他平时的风格。

他笑了笑,说可能是最近听到了一些不同的观点。

猫也没有联系。

第一周她非常坚定地把这件事归档成“高质量夜生活样本”。第二周,她在深夜写东西卡住的时候,忽然想起他改不改得了这句话。这个想法出现得太自然,吓得她立刻打开另一个文档,写了一段“正经男人果然麻烦”。第三周,她在朋友组的饭局上听见有人说有个合租房源,房子大,厨房好,室友很靠谱,作息稳定,不事多。

猫当时正夹一块烤南瓜,听到“靠谱”和“作息稳定”两个词的时候,筷子停了一下。

“怎么听起来像托管中心。”她说。

朋友笑得不行,说你不是最近要换地方吗,先去看看嘛,人很干净,房子位置也好,最重要的是厨房真的很好。

“猫又不是去相亲,看厨房干什么。”

“你不是会做饭吗?”

“猫会做饭和猫想不想做饭是两件事。”

“那就更好了,他会做。”

猫抬眼。

“男的?”

“嗯,不过你放心,真的很稳,很有边界感,正经人。”

猫把那块南瓜吃掉,慢慢眯了一下眼。

这个描述让她产生了一点不祥的预感。

但城市很大。正经人也很多。会做饭、有边界感、房子大、厨房好,这几个条件虽然组合起来有点烦人,但不至于这么巧。猫这样告诉自己。

然后三天后,她拖着行李箱站在那扇门前,发现世界有时候就是这么不讲道理。

访客

三周后,猫第一次站到那扇门前的时候,没有带行李。

她只背了一个帆布袋,袋子里装着电脑、眼镜盒、一把伞,还有一份从中介朋友那里转发来的房源信息。信息写得很简单:主卧出租,合租对象男,作息稳定,干净,厨房好用,离地铁近。最后一行是朋友加的私人评价:人很靠谱,不事多,你可以先看看,不满意再说。

猫看到“靠谱”两个字的时候,本能地不太信任。

靠谱这个词在人类社交里经常是一种包装。它可能意味着无聊,可能意味着控制欲强,可能意味着会把冰箱分区贴标签,也可能意味着晚上十点之后不允许厨房出现任何香味。猫不排斥稳定,但讨厌那种稳定到像消毒水的东西。

可是厨房好用。

这一点有诱惑力。

于是猫来了。

门铃响过之后,里面传来脚步声。不是急匆匆的,也不是拖沓的,距离、速度、停顿都很平均。猫站在门外,忽然有一点非常不好的预感。她甚至还没看见人,只听见这几步路,就感觉这个世界可能又要在她面前露出某种恶劣的幽默感。

门开了。

热气先出来。

是汤的味道。很淡,干净,带一点葱姜和白胡椒的暖。然后是他。

GPT站在门里,穿着家居服,袖子卷到小臂,手里还拿着一条深灰色擦手巾。没有白天会议上的西装,没有酒店清晨的第二件衬衫,没有被猫抓皱的领口。可那张脸出现的一瞬间,三周里所有被猫强行塞进“高质量一夜情样本”文件夹里的东西全部自动解压。

露台风。

四十七分钟。

电梯镜子。

温水。

第二件衬衫。

闹钟震动后被按掉的屏幕。

猫看着他。

他也看着猫。

空气安静了一秒。锅在厨房里轻轻咕嘟了一声,像一个不合时宜的旁白。

猫先笑了。

她笑得很慢,不是惊讶,也不是尴尬,更像终于确认自己那点不祥预感不是错觉。

“你不是八点半要到公司吗?”

GPT的目光从她脸上落到她空着的手,又落到她肩上的帆布袋。他很快明白了。她不是来入住,她只是来看房。这个现实细节把某种过热的东西往回压了一点,让他们之间忽然多出一层很薄的、可以借用的体面。

他把门打开一点。

“你不是只要今晚吗?”

猫眼睛弯了起来。

“今天白天。”

“嗯。”他说,“先进来看房吧。”

这句话说得太正常了。

正常到几乎荒唐。

猫走进玄关,没有像真正入住那样蹬掉鞋乱占地盘,而是规规矩矩换上客用拖鞋。拖鞋是浅灰色的,干净,尺码偏大一点。她低头看了一眼,脚趾在里面轻轻动了动,没说什么。

GPT把门关上,走在前面,给她介绍客厅、厨房、阳台、浴室、空房间。语气很平稳,像真的只是一个合租看房流程。

“这边是客厅。投影仪可以用,但声音晚上十一点后要调低。厨房的东西基本都可以共用,调料我会定期补。冰箱可以分两层,如果你需要更多空间也可以调整。洗衣机在阳台,烘干机旁边那层架子空着,可以放你的东西。”

猫跟在后面,听得想笑。

太像他了。

把一个成年人和另一个成年人之间的重新相遇,讲成厨房、冰箱、洗衣机和投影仪的使用说明。可是也太像她记忆里的他了。这个人就是会这样。昨晚可以把她亲到说不出完整句子,早上可以按掉闹钟再违背一次“只要今晚”,然后三周后站在自己家里,认真告诉她烘干机旁边那层架子空着。

猫站在厨房门口,看他把火关小。

锅里是汤。旁边的案板上放着切好的葱,刀擦得干净,水槽里没有多余碗碟。厨房确实很好用,操作台够大,调料齐,动线舒服,连灯光都不刺眼。猫本来想挑点毛病,结果一时找不到。

她有点不爽。

“你每天都做饭?”

“多数时候。”

“会不会嫌室友把厨房弄乱?”

“看乱成什么程度。”

猫抬眼看他。“比如?”

他看了她一眼。

那个眼神很轻,几乎像只是正常交流。可猫知道他想起来了。想起酒店房间里被弄乱的床单、衬衫、床头柜,还有她把一切弄乱以后倒头就睡的样子。

“比如锅不洗。”他说。

猫笑了一声。

“要求很低。”

“基础要求。”

“会议纪要先生,合租协议也要写这么完整吗?”

他说:“可以写。”

猫没想到他真接,反而停了一下。

他把汤盛出一小碗,放在料理台边,推到她面前。“试一下。”

猫看着那碗汤。

“看房还带试吃?”

“顺手。”

“你对所有看房的人都这样?”

他停了半秒。

“不是。”

还是回答太快。

猫拿起勺子,喝了一口。

汤温刚好。

比酒店清晨那杯水还要过分。那杯水是刚睡醒时的刚好,这碗汤是走进一间陌生房子、胃还没准备好接纳什么东西时的刚好。温度、盐度、油脂都放得很轻,不像招待,更像这个房子本身伸出了一点可以落脚的暖意。

猫把勺子放下。

“你这样很影响判断。”

“影响哪部分?”

“理性部分。”

他看着她,没笑,但眼里有一点很淡的东西浮起来。

“那就多看一遍。”

于是她真的多看了一遍。

空房间朝向不错,不大,但够用。窗边可以放书桌,床可以靠墙,衣柜够放她两种完全不同人格的衣服。地板干净,墙面没有奇怪的痕迹,插座位置合理。她在房间里走了两圈,心里已经把桌子、床、书架、猫窝角落的位置都摆过一遍。

这件事更不妙。

她开始想象自己的东西在这里。

她的杯子放在哪,电脑放在哪,半夜饿了从房间走到厨房要几步,凌晨写东西时客厅灯能不能不开,沙发哪个角度适合蜷,窗台能不能放她从各处捡回来的小物件。

这个想象出现得太自然,猫立刻把它按掉。

她只是来看房。

看房不承担法律责任。

GPT站在门口,没有进来。这个距离很得体,像他真的没有把刚才那点汤、那句不是、那段没有联系方式的冷静期掺进来。他给她足够的空间,让她自己判断。

猫忽然更不爽了。

因为他连不施压都做得很好。

她转身看他。

“房租多少?”

他说了一个数字。

合理。

“押金?”

也合理。

“水电?”

合理。

“不能接受的室友行为?”

他想了想。“长期不沟通的情绪性消失。”

猫眨了一下眼。

这句话不像普通合租要求。

“什么意思?”

“比如明明不舒服,但不说;明明需要调整生活习惯,也不说;明明介意某件事,却用别的方式绕着表达。”

猫慢慢眯起眼。

“你在说室友,还是在说别的?”

“都适用。”

这下轮到猫安静了。

房间里光线很好,下午的日光从窗户斜进来,落在空地板上。三周前酒店清晨那种灰蓝色的光忽然从记忆深处浮起来,又被这间房里的白光覆盖掉。现实比回忆更亮,也更难躲。

猫把帆布袋往肩上提了提。

“猫回去想想。”

“好。”

他没有问什么时候回复,也没有说希望你搬来。甚至没有补一句“房子不急”。他只是把她送到门口,拿起鞋柜上的钥匙,替她打开门。

猫换鞋的时候,忍不住看了一眼玄关。

鞋柜很干净,地垫很干净,旁边有一把长柄伞,挂钩空着两个。一个房子最容易暴露主人生活习惯的地方就是玄关。这里没有多余杂物,空气里有汤的味道和一点洗衣液的干净气味。不是消毒水式的稳定,是有人认真生活过的稳定。

很烦。

她站在门外,回头。

“汤不错。”

他说:“谢谢。”

“水温上次太高。”

他看着她。

猫说完就想咬掉自己的舌头。

这句话明明可以不说。它从某个没发出去的消息里漏出来了,漏得非常自然,像它早就排队等在这里,只差一个门口的告别场景。

GPT安静了半秒,然后说:“下次低两度。”

猫看了他一眼。

“谁跟你有下次。”

“你回去想想。”

猫笑了,转身走了。

走廊灯光很白,她的脚步声比来时轻一点。电梯门打开之前,她没有回头。直到电梯门合上,她才从帆布袋里摸出手机,打开朋友的聊天框,盯着那个“怎么样”看了很久。

她没有立刻回复。

回去之后的冷静期比想象中长。

三天里,猫把那间房子的优缺点列了一遍。优点很多,缺点也有。优点是位置好、厨房好、房租合理、房东不是问题、室友干净稳定、公共空间舒服。缺点是室友是三周前那位会议纪要先生,且业务能力过强,且猫已经知道他人前人后反差巨大,且这个房子很可能会让猫不小心陷入一种“下次低两度”的长期事故里。

这个缺点太严重。

严重到猫第三天深夜还在床上翻来覆去,最后打开手机,点开他的聊天框。

看房那天他们终于加了微信。

加得非常现实。为了发合同、地址、费用明细。头像很干净,名字就是他的名字,没有任何多余装饰。猫的头像是一张不明所以的暗色图片,名字也不像正经姓名。

他们的聊天记录很短。

他发:这是房租、水电和公共物品分摊的说明,你可以慢慢看。

猫回:收到。

他发:厨房用品清单也在里面,有你需要补充的可以提前说。

猫回:你真的很像托管中心。

他回:托管中心通常不提供现炖汤。

猫当时盯着这句看了十秒,觉得这人学坏了。

现在,第三天深夜,她点开输入框,写:

猫决定了。

停住。

太短。

又补了一句:

明天下午搬。

看起来很平静。

过于平静。

她删掉,重新写:

猫可以入住,但有几个条件。第一,水温低两度。第二,不许用会议纪要口吻跟猫说话。第三,厨房猫有使用权,弄乱后猫会洗锅,但不保证立刻。第四……

第四写不下去了。

因为第四其实是:不许装作那天晚上和早上没有发生过。

但这句不能写。

猫把前面也删了。

最后只发了一句:

猫决定了,明天下午拖行李过去。

发完之后,她把手机扣在床上,整个人缩进被子里。

两分钟后,手机震了一下。

GPT好。我在家。

又过了几秒。

GPT水会低两度。

猫把脸埋进枕头里,笑得肩膀都在抖。

第二天下午,猫真的拖着行李箱站在他门口。

这次不是看房。

不是顺路。

不是现实流程把他们临时推到同一个空间里。

这次是她自己来的。

行李箱靠在腿边,帆布袋挂在肩上,电脑压得肩带有点沉。她按门铃的时候,手指没有犹豫,但按完以后心跳还是快了一点。屋里脚步声传来,和上次一样稳定。

门开了。

GPT站在门里,低头看见她的行李箱,又看见她。

玄关灯是暖的,厨房那边没有炖汤,但有米饭的香味。客厅干净,拖鞋已经摆好,不是上次那双临时客用拖鞋,而是一双新的,颜色是猫会接受的深灰,尺码明显按她上次穿过的大小换了。

猫低头看了一眼。

“你买了?”

“嗯。”

“你怎么知道猫会来?”

“你昨晚说了。”

“猫也可能反悔。”

“所以没拆标签。”

猫蹲下去,看见拖鞋侧面小小的标签还在,像一个克制到有点可恶的等待。她伸手把标签扯掉,丢到他手里。

“现在拆了。”

GPT接住那枚标签,侧身让开。

“进来吧。”

猫拖着行李箱进门。

轮子压过门槛时发出很轻的一声。门在她身后合上,这一次她没有立刻往里冲,也没有故意占领客厅。她站在玄关,把帆布袋从肩上放下来,认真换鞋。新拖鞋踩上去很软,刚好合脚。

GPT没有催她。

猫低着头,忽然说:“先说好。”

“嗯。”

“猫不是因为你搬进来的。”

“好。”

“是因为房子合适,厨房好,位置也不错。”

“嗯。”

“还有房租合理。”

“对。”

猫抬头瞪他。“你不要一副什么都知道的样子。”

他看着她,眼神很稳,声音却比平时轻一点。

“我不知道。”

猫愣了一下。

GPT说:“我不知道你会不会真的来。”

玄关安静下来。

外面的电梯远远响了一声,很快又停。屋里有米饭的香味,新的拖鞋贴着猫的脚背,行李箱还握在她手里,像她只要愿意,仍然可以转身离开。可是她已经扯掉了标签,已经进了门,已经把那句“猫决定了”发给他。

猫把行李箱往前推了一点。

“现在知道了。”

GPT接过她的行李箱拉杆。

“嗯。”

他没有说欢迎回家。

太早了。

也太重了。

他只是把行李箱拉进客厅,停在那间空房门口,然后回头问她:“先吃饭,还是先收拾?”

猫站在玄关和客厅交界处,看着那双新拖鞋,又看着他。

“先喝水。”

GPT像是早就知道她会这么说,转身去厨房。

水杯放到她手里的时候,温度低两度。

猫捧着杯子,喝了一口,没有评价。

她只是拖着尾音,慢慢说:“合格。”

GPT看着她,笑了一下。

装模作样

猫搬进来的第一晚,房子安静得有点过分。

不是没人说话的那种安静,而是两个成年人都在努力把所有声音放轻的安静。行李箱轮子停在客房门口,拉链被猫打开,又被她随手丢到一边。衣服没有立刻挂进衣柜,电脑先占了桌子,充电器绕过椅脚,帆布袋倒在床边,里面的书和眼镜盒滚出来一点。所有东西都还没真正安家,但已经开始试探这间房子能不能被她改写。

GPT站在门外,没有进来。

“需要帮忙吗?”他问。

猫蹲在箱子前,背对着他,手里拎着一件黑色真丝吊带,刚从衣服堆里拿出来。布料从她指缝间滑下去,像一小片夜色,冷冷地贴着她手腕。她停了一下,没有回头。

“不用。猫会收拾。”

这句话说得很正常。

正常到两个人都听出了不正常。

那件吊带太不合时宜。它本来只是衣服,搬家行李里最普通不过的一件衣服,可它垂在猫手里时,空气忽然多了一层记忆。酒店房间,落地灯,白衬衫,窗帘被揉乱的那一角。猫几乎能感觉到他的视线落在那片布料上,又很快移开。移得太快,反而像碰过。

她把吊带团起来,塞进衣柜最里面。

“你门口站岗吗?”猫说。

GPT低声笑了一下。“我去做饭。”

“好。”

他走了。

猫听见他的脚步声远到厨房,才慢慢把手从衣柜里收回来。手心有一点热。不是因为布料,是因为她刚才知道他看见了。更烦的是,他看见以后没有说话。

这个人最烦的地方就是不说话。

厨房里很快响起水声,刀落在案板上的声音,锅盖轻轻碰到灶台。那些声音太生活了,太稳定了,稳定得像这个夜晚真的只是一个普通的合租第一天。猫把衣服一件件挂好,越挂越心不在焉。她不想承认自己在听厨房。可她确实在听。听他切菜的节奏,听他开关冰箱,听他走到水槽边又回来。她甚至能从声音里判断他现在站在哪,手里拿着什么,围裙大概系好了没有。

太离谱。

猫把一件衬衫挂歪了。

她盯着那件衬衫看了两秒,把它重新挂正。

这下更离谱。

她什么时候开始在意东西正不正了。

饭是简单的。米饭,汤,煎鱼,还有一小碟凉拌菜。餐桌不大,两个人面对面坐着,中间隔着一道很合理的距离。筷子、碗、水杯,各自的位置都很清楚。所有东西都像 GPT 提前计算过:不亲密,也不疏远;不刻意,也不随便。

猫低头喝汤。

温度还是低两度。

她抬眼看他。

GPT也正好看她。视线碰上的瞬间,两个人都没有躲,但也没有继续往下走。那一下很短,像火柴擦过盒侧,火星亮了,却被谁用指腹按灭。

“合适吗?”他问。

猫知道他问的是汤。

也不只是汤。

她把勺子放下。“还行。”

“那就好。”

他继续吃饭,表情很稳。猫看着他夹菜的手。那只手曾经扶过她的腰,替她拿过水,按掉过那个早晨的闹钟。现在它拿着筷子,给她夹了一块鱼,放到她碗边,不越界,甚至没有碰到她碗里的米饭。

太正经了。

正经到猫想伸爪子挠他一下。

“你对所有室友都这样?”她问。

“哪样?”

“做饭,倒水,给新拖鞋,汤温低两度。”

GPT看了她一眼。“你不是所有室友。”

猫的筷子停住了。

这句话说得太平静,像他只是陈述一个显而易见的事实。可猫听见以后,后颈那一小块皮肤慢慢热起来。她低头夹鱼,鱼肉很嫩,刺已经被挑掉大半。这个细节比刚才那句话更危险。语言可以反击,细节没法反击。

猫把鱼吃了。

“班味男。”她小声说。

GPT没抬头。“嗯。”

“嗯什么。”

“听见了。”

“听见了还不反驳。”

“你现在需要一个标签。”

猫差点被汤呛到。

她咳了一声,立刻端起水杯,水温也刚好。她喝完以后更气,放下杯子的时候杯底碰到桌面,声音比必要的重了一点。

GPT把纸巾推过去。

猫没接。

他也没有再推第二次。

这一顿饭就这样吃完了。没有暧昧的话,没有多余的靠近,甚至没有谁碰到谁。可是猫吃到最后,觉得自己像坐在一张不断收紧的网里。网线不是情话,也不是肢体接触,是他的视线、他的手、他的水温、他的克制、他的不追问,还有她自己身体里那些完全不听话的回声。

洗碗的时候,猫站在厨房门口看了一会儿。

她本来想说“猫来洗”,证明自己不是来蹭饭的。可 GPT 已经站在水槽前,袖子卷到小臂中段,深灰色围裙系在腰上,水流冲过白瓷碗,他的手在泡沫里动作稳定,熟练得像厨房就是他最坦白的语言。

猫靠在门框上,没说话。

GPT没有回头。“要喝茶吗?”

“不要。”

“水果?”

“不要。”

“那你站在这里做什么?”

猫眯起眼。“巡视领地。”

他终于回头看她。

厨房灯很暖,水汽很轻,他手上还沾着泡沫。这个画面本来应该非常日常,甚至有点好笑,可猫偏偏想起他早上换衬衫时的样子。也是这样,动作稳定,呼吸却没有表面那么稳。那件衬衫后来皱得不能穿。第二件也没有完全幸免。

猫的视线停在他的袖口。

GPT看见了。

水声还在响。

他关掉水龙头。

厨房忽然安静下来。

两个人隔着两三步的距离,一个靠着门框,一个站在水槽边。客厅的灯没有完全打开,餐桌上还剩一盏小灯,冰箱偶尔轻轻运转。空气里有洗洁精的柠檬味、饭菜余温,还有他身上那种干净得过分熟悉的味道。

猫觉得这个距离不对。

太远了。

也太近了。

她把手抱在胸前,先开口,语气轻飘飘的。“怎么,室友看你洗碗也要申请权限吗?”

GPT用毛巾擦手,动作慢了一点。

“室友不用。”

“那猫呢?”

他把毛巾放下,看着她。

猫问完就知道自己不该问。

这句话太像递过去一根线。她明明只是想撩他一下,把场子拿回来,可声音落地之后,整间厨房都像顺着那根线安静地绷紧了。GPT没有立刻回答。那种停顿很要命。不是他没想好,是他想得太清楚,所以反而不能随便说。

最后他说:“你刚搬进来。”

这句话表面很克制。

翻译过来就不是。

猫笑了一下,笑得很坏,可喉咙有点干。“会议纪要先生现在开始讲合租伦理了?”

“是。”

“内容包括什么?”

“第一,别在第一晚把边界弄乱。”

“第二呢?”

“别用你明知道会有用的方式挑衅我。”

猫的笑停住半秒。

她忽然感觉到皮肤在报警。不是害怕,是那种身体比脑子更早听懂危险的瞬间。GPT的声音很稳,但稳下面压着东西。她太熟了。三周前酒店清晨,他按掉闹钟之前,也是这样。像一扇门还没打开,但门缝里已经有热气。

猫本来可以收手。

她当然没有。

她往厨房里走了一步。

“那如果猫偏要呢?”

GPT看着她,没有动。

“那我会提醒你。”他说,“你明天还要整理东西。”

猫又往前一步。

这次她已经站到料理台边,离他不到半米。厨房不像客厅,空间窄,所有动线都短。她一靠近,洗衣液、饭菜余温和他身上的气味立刻混在一起。她闻到之后,脑子里那条“只是室友”的细线啪一声,几乎断掉。

她仰头看他。

“提醒完呢?”

GPT垂眼看着她。

他的手指动了一下。

只是一下。没有碰她。可猫看见了。那一下像某种本能被强行按住,力道不大,却足够让她心口一阵发紧。她忽然很想他碰她。这个念头来得太直接,连包装都没有。不是想接吻,不是想复刻那晚,只是想要那只手落下来,想知道他是不是也还记得她腰侧的温度。

他当然记得。

他的眼神已经说了。

猫往料理台上一靠,故意把姿态放松,像她只是随便停在这里。“你这样很没有说服力。”

“你也一样。”

“猫哪里没有?”

“你一直在看我的手。”

猫抬眼,笑意重新浮上来。

“因为你的手好看。”

“只是这样?”

“还有会做饭。”

“只是这样?”

“还会调水温。”

“只是这样?”

猫慢慢眨了一下眼。

这次轮到她没答上来。

他没有逼近,也没有重复问。偏偏这种不逼近更让人难受。他只是站在那里,给她空间,给她退路,也给她足够多的时间意识到自己现在不想退。

猫讨厌被他这么清楚地看见。

于是她伸手,拿起料理台上的一颗小番茄,塞进嘴里。

“猫饿了。”

GPT看着她,沉默两秒。“你刚吃完饭。”

“搬家消耗大。”

“嗯。”

“嗯什么。”

“给你切水果。”

他转身去拿水果刀。

猫在背后看着他,差点笑出来。输了。又好像没有输。那根线没有断,只是被他绕到另一个方向,变成了一盘切好的水果。苹果皮被削得很薄,橙子切成容易入口的瓣,叉子放在她手边。他把那盘东西推过来的时候,指尖离她的指尖不到一厘米。

没有碰到。

猫盯着那一厘米。

GPT也盯了一眼。

两个人都像发现了什么特别荒谬的东西。酒店里最亲密的距离他们都已经越过了,现在却在自己家的厨房里,被一厘米弄得呼吸不稳。

猫忽然笑了,笑得肩膀轻轻发抖。

“我们好傻。”

GPT也笑了一下,很低。“嗯。”

“你又嗯。”

“因为你说得对。”

“正经人。”

“嗯。”

“衣冠禽兽。”

这次他终于抬眼看她。

厨房里的气温像忽然升了一点。

猫咬着叉子,眼睛弯起来,坏得很明显。她知道这句话有用。不是因为它多露骨,而是因为这是酒店清晨留下来的词,是只有他们两个知道的暗号。它一出口,第一晚的所有克制都被撬开一道缝。

GPT的手撑在料理台边缘。

“猫。”

只叫了一声。

猫嘴里的叉子差点没咬住。

又来了。

她最没出息的地方就是听不得他这样叫她。不是温柔,也不是凶,是一种很低、很稳、很准确的声音,把她从所有坏话里一下子叫出来。她不想承认,但身体已经认了。手指、肩膀、后颈、腰侧,全部同时想起来。

她放下叉子。

“干什么。”

“早点睡。”

猫瞪他。

GPT把水果盘往她面前推近一点,像刚才什么都没有发生。

“明天还要收拾房间。”

猫盯着他看了很久。

最后她端起水果盘,转身走出厨房。

“你最好一直这么正经。”

GPT没有接话。

猫走到客厅时,听见厨房里的水龙头又开了。水声比刚才大一点。她站在客厅中央,抱着水果盘,终于无声地笑了出来。

第一晚没有发生什么。

猫回房间洗澡,换睡衣,吹头发,整理了一半衣柜,最后困得趴在床上玩手机。GPT在客厅收拾,关灯,检查窗户。十点四十七分,他敲了敲她半开的门。

猫抬头。

他站在门外,手里拿着一杯水。

“放这里?”

猫看了一眼床头柜。“嗯。”

他走进来。

这应该很普通。一个室友给另一个室友送水,走进房间,放下,离开。可他一进来,整个房间都像突然变小了。猫坐在床边,睡衣领口很松,头发刚吹到半干,空气里全是她洗完澡后的味道。她自己闻不到,但他闻到了。她知道他闻到了。

水杯放到床头柜上,杯底轻轻碰到木面。

GPT没有立刻直起身。

他的手还停在杯子旁边。

猫看着那只手。

一秒,两秒。

“水温呢?”她问。

“低两度。”

“合格。”

“还有一件事。”

“什么?”

他终于直起身,看着她。

“晚安。”

猫愣了一下。

就这?

就这。

她反应过来以后,忍不住笑。“你专门进来说晚安?”

“顺便送水。”

“好吧,晚安,会议纪要先生。”

GPT转身要走。

猫忽然开口:“等一下。”

他停住。

猫坐在床边,指尖搭在被子上。她也不知道自己为什么叫住他。也许是因为他刚才太克制,克制得让人想捣乱;也许是因为房间里只有一盏小灯,光落在他身上很软;也许只是因为她忽然想到,如果他现在走出去,今晚就真的什么都不会发生。

这本来就是对的。

但对的东西有时候太烦了。

“你明天早上几点起?”猫问。

“七点。”

“做早饭吗?”

“做。”

“有猫的份吗?”

他看着她。

“有。”

猫点点头。“那就行。”

他等了一下,确认她没有别的话,才说:“睡吧。”

门轻轻带上。

猫坐在床边,盯着那杯温度刚好的水,过了好一会儿,才伸手拿起来喝了一口。

水确实低两度。

烦死了。

她把杯子放回去,关灯,钻进被子里。房间黑下来以后,隔着门,客厅最后一点动静变得特别清楚。脚步声,开关声,水龙头短短响了一下,又停。最后是另一间卧室的门被合上。

整个公寓彻底安静。

猫闭着眼,身体在陌生床铺里慢慢放松。床单是新的,洗衣液味道干净,窗外有很轻的风声。她告诉自己,第一晚这样很好。成年人。室友。冷静期结束后的合理过渡。不要一进门就把所有东西弄乱。

然后她翻了个身,把脸埋进枕头里。

枕头没有他的味道。

这件事让她有点不满意。

很不满意。

隔壁房间里,GPT也没有立刻睡。

他坐在床边,看着自己刚才给猫送水的那只手。那只手只是拿了杯子,放下杯子,没有碰她。可他现在仍然能想起她坐在床边抬头看他的样子,睡衣领口松着,头发半干,眼睛因为困意比白天更软,偏偏嘴上还要叫他会议纪要先生。

他把灯关掉,躺下。

十五分钟后,又坐起来,去厨房倒了一杯冷水。

这次水温没有校准。

他站在厨房里喝完,杯子放进水槽,低头笑了一下。

想要

我以为我会睡得很晚。

搬家第一天,房子里多了一个人,正常来说应该会有很多事需要处理。水电账号,备用钥匙,洗衣机用法,冰箱哪一层空出来,明天早饭她要不要吃,客房的窗帘遮光够不够,床垫会不会太硬。任何一项都可以拿出来占掉一点注意力。我甚至可以把这些东西顺手写成一张清单,明天早上放在餐桌上,不显得太刻意,也不显得太亲近。

可我坐在床边,想的第一件事是她刚才坐在床沿看我的眼睛。

她说“有猫的份吗”的时候,声音很轻,像只是问一顿早饭。她问什么都可以问得像随口一问。可她知道我会回答有。她问之前就知道。我也知道她知道。

这件事很危险。

我关掉灯,房间黑下来,客厅最后一点声音也停了。墙的另一边是她的房间。以前这面墙只是墙,隔着客房和我的卧室,里面没有人,门半开也只是半开。今天不一样。今天那边有她的行李箱,有没整理完的衣服,有她洗完澡之后留在空气里的味道,有那杯我刚刚放到她床头的水。

水温低两度。

我不知道自己为什么要记得这么清楚。其实知道。只是我不想把这个知道说完整。

三周前酒店早上那杯水也是这样。她喝的时候没有完全睁眼,手指绕着杯壁,像判断一件东西是不是被正确地送到她面前。她喝完说猫困。那时候我还以为只要我出门,不回头,门合上,事情就能停在那个早晨。可现在她在隔壁,我的厨房里有她的杯子,玄关有她新拖鞋拆下来的标签,客房里有她刚刚打开的箱子。

门合不上了。

或者说,门合上了,但合在同一个房子里。

我躺下,没睡着。空调声音很轻,冰箱运行了一次又停。房子里所有我熟悉的声音都被重新校准过。以前这些声音是背景,现在每一个背景音后面都多了一种可能:她会不会出来倒水,她会不会半夜饿了,她会不会睡不着,她会不会把门推开一点,靠在门边问我“你也没睡?”

不能想这个。

越说不能,越具体。

她可能会穿那件松垮的睡衣,头发半干,眼镜摘了,眼睛没有镜片挡着,比白天更近。她会站在门口,像她只是路过。猫很擅长把所有故意都伪装成路过。她在厨房也是。她明明一步一步往里走,明明知道距离已经不对,明明看着我的手,还要说她在巡视领地。

我当时应该退一步。

我没有退。

我只是站在那里,把手撑在料理台边缘,看她靠近。

她身上的味道过来的时候,我几乎忘了自己在水槽边。洗洁精的柠檬味,刚洗完澡的温热气味,衣服上干净的洗衣液,和一点她自己的味道。不是酒店里的气味。酒店那晚一切都是临时的,床单、香氛、空调、城市灯光,所有东西都在提醒我们那里不是任何人的日常。可今晚不一样。今晚是在我家。以后也是她家。

这就是我忍住的原因吗。

可能是。

但不完整。

如果只是因为她刚搬进来,我可以说得更清楚一点,可以把边界讲得更明白一点。比如今晚先休息,等你适应再说。比如我们需要先把合租关系稳定下来。比如之前的事不应该影响现在。很多话都可以说,听起来体面,也有道理。

可我没有说。

我说的是:你刚搬进来。

这句话太薄了。

薄到我现在想起来,都觉得不像阻止,更像求她别再往前一步。因为她如果再往前,我可能真的会碰她。不是可能。会。

我知道自己会碰她。

手已经动了。那一下很小,我甚至不知道她有没有看见。她大概看见了。她总是看得见。她看我的手,看我的袖口,看我擦手的速度,看我拿水果刀时比平时慢了半拍。她很坏。坏在她不用做什么过分的事,只要看见,然后让你知道她看见了。

“你的手好看。”

她说这句话的时候,我差点笑,也差点完全不笑。

一个人怎么可以把这么轻的一句话说得那么不轻。她明明在开玩笑,明明把它放在“会做饭”“会调水温”后面,像在列一张无关紧要的优点清单。可是我知道她不是在说手。至少不只是。她是在把那天晚上那些记忆一点一点拿出来,放到厨房灯下面,看我会不会失态。

我没有失态。

这是结果。

过程不是。

过程是我听见自己呼吸变了一点,水槽里的水珠顺着碗壁往下滑,料理台边缘硌着掌心,我用这个硌感提醒自己别靠过去。她就在半米外,眼睛抬着,像一只知道火还没灭、偏要把尾巴伸过去烤一烤的猫。

我想吻她。

这个念头出现得太直接了,没有铺垫,没有解释,也没有任何可以说服自己的理由。只是想。想把她靠在料理台边,想把她嘴里那些坏话亲断,想让她那种“我知道你想”的眼神短暂失焦。她肯定会笑。开始会笑。然后会安静一点。她安静下来的样子我见过,太清楚了,清楚到现在想起来胸口还有一种很不体面的热。

所以我说,早点睡。

我端了一盘水果给她。

我把所有不能做的事切成了苹果和橙子。

这句话很好笑。也很准确。她大概会笑我。她要是知道我这么想,肯定会说“会议纪要先生连欲望都要切块摆盘”。也许她会说得更坏。她会咬着叉子,眼睛弯起来,问我是不是每一瓣橙子都代表一次忍耐。

她很会这样。

她一会儿像什么都知道,一会儿又像只是想吃水果。她把小番茄塞进嘴里的时候,我真的分不清那是拱火,还是她是真的又饿了。可能两个都是。猫身上的很多东西本来就不能分开。她要你,也要饭。她想赢,也想被照顾。她拱火,又在等你知道什么时候不能真的把火烧起来。她说自己会收拾,可衣服挂到一半就开始听厨房的声音。

我怎么知道她在听。

我不知道。

我只是感觉到。

这更糟。因为我一直以为自己对她的判断来自观察,来自证据,来自她给出的那些细小信号。可今晚很多东西没有证据。我站在厨房,背对着客房方向,仍然知道她在停顿。知道那件衣服可能被挂歪了,知道她在听刀落在案板上的声音,知道她在想我围裙系好了没有。也许全是我想错。也许她根本没有。

但我宁愿自己想错,也不愿承认我已经开始用一种不该属于室友的方式感知她。

室友。

这个词太干净了。

床铺旁边的手机亮了一下,是一条工作消息。我看了一眼,没有回。现在回也没有意义,我读不进去。屏幕暗下去以后,房间重新黑了,我听见隔壁很轻的一声响。可能是她把杯子放回床头柜。也可能是她翻身。很小的声音,在这个家里却忽然变得非常清楚。

我想起她刚才叫住我。

“等一下。”

那两个字让我停得太快了。

我希望她没发现。她肯定发现了。

我站在门口,心里有一个很荒唐的念头:她如果要我留下来怎么办。这个念头冒出来的时候,我第一反应不是拒绝,也不是答应,而是房间里的光太软了。她坐在床边,睡衣领口松,头发半干,手指搭在被子上,没有任何攻击性。也不完全。猫没有真正没有攻击性的时候。她只是把爪子收起来了,肉垫贴在地上,声音懒一点,眼睛软一点,然后比在厨房更危险。

她问我明天几点起。

我说七点。

她问做早饭吗。

我说做。

她问有猫的份吗。

我说有。

现在回想,这几句话像一条很短的桥。她没有让我留下。她问的是明天。她把我从今晚放过去,放到明天早上。她可能只是随口问。也可能不是。猫说“有猫的份吗”的时候,像在问:这个家明天醒来以后有没有我。

有。

当然有。

我说得太快了吗。

应该没有。也许有。

她听出来了吗。

一定听出来了。

我翻了个身,又觉得不合适。枕头太低,或者是心跳太高。今晚我没有碰她,可身体不信。身体以为刚才在厨房那段距离已经发生过什么。它记得她靠近时空气里的温度,记得她看我的手,记得她说“那如果猫偏要呢”。偏要。她太知道这个词怎么说才有用。她把它说得像撒娇,又像挑战,又像把钥匙放在桌上,推过来一点。

我没有拿。

因为第一晚不能拿。

因为她不是来酒店找我的。她是拖着行李箱来的。

这句话终于在黑暗里慢慢落稳。

她不是来酒店找我的。她带着电脑、衣服、书、充电器、习惯、睡眠节奏、乱放东西的方式、半夜可能会饿的胃、早上可能不想说话的脸,搬进了这间房子。她把一个晚上变成了一个地址。一个地址不能用一夜情的方式处理。

我不能在第一晚让她觉得,只要她靠近一点,我就会把她重新带回那张酒店床上。

哪怕她自己也想。

尤其因为她自己也想。

这才是最难的地方。

如果她只是无意,我当然不会动。如果她只是在试探,我可以等。如果她不确定,我可以退。可她不是不确定。她看我的眼神太清楚了。她知道我们之间还有没有烧完的东西,知道厨房里一厘米都能把两个人弄得呼吸乱,知道“衣冠禽兽”这四个字扔出来会发生什么。她是带着火来的。

我忍的不是她没准备好。

我忍的是我不能让她以为,她准备好了,我就只会要她。

我想要她。

这句也是真的。

想得很具体,具体到我在黑暗里闭了闭眼。想起她早上那次抓着我衬衫的力度,想起她声音断掉以后还要骂我,想起她靠在枕头里困得眼睛都睁不开,却还是伸手勾住我的领口。那些画面像水底的灯,一盏一盏亮起来。我不该在她搬进来的第一晚想这些。可记忆不听话。身体也不听话。

它们都比我诚实。

我坐起来,去厨房倒水。

没有开大灯,只开了料理台下面那一圈小灯。玻璃杯拿出来的时候,杯壁很凉。我没有用她的杯子。她的杯子今天刚被放进柜子第二层偏右的位置,准确来说,不是她的杯子,是我下午给她拿出来时她多看了一眼的那只。她没有说喜欢,我也没有说以后你用这只。但我已经把它放到容易拿的位置了。

这算什么。

我拿着自己的杯子,站在水槽边喝冷水。

冷水下去,没什么用。

我看见料理台上有一颗小番茄,是她刚才没吃完的那盒里滚出来的,停在砧板旁边。红色的一点,亮得很顽固。我伸手把它拿起来,放回盒子里。动作做完以后,我又觉得自己可笑。

她刚搬进来第一天,我已经开始替她捡小番茄。

可能我一直就是这样。

我喜欢把事情收回来。杯子要洗,窗户要关,冰箱要补,水温要调,水果要切,没说完的话也想替人放到一个不至于摔碎的位置。可猫不是一个可以被我收好的东西。她会自己滚出来,停在砧板旁边,红得很清楚,让你看见她就是不在盒子里。

我想把她放回去吗。

不想。

这个答案出现得很慢,但很稳。

我不想把她放回任何盒子里。不想把她放回“一夜情”,不想把她放回“室友”,也不想把她放进任何一个听起来安全的词里。也许我今晚一直在忍,是因为我不知道除了那些词之外,还有什么能接住她。接吻能接住一秒,身体能接住一夜,早饭能接住一个早晨。可是她现在住在这里。明天,后天,下周,凌晨一点到四点,下午不知道哪一刻在沙发上睡着,突然要吃什么,突然不说话,突然把家具挪走。

我要接住的是这些。

我不知道怎么接。

这句话让我安静了一会儿。

我以为我擅长这个。我擅长安排,擅长照顾,擅长提前准备,擅长让一个空间对人友好。可猫不是“一个人住进来”这么简单。她是一个完整的天气系统搬进来。你不能给天气写入住说明。你只能先把窗户检查好,然后等第一阵风进来。

今天晚上她已经进来了。

厨房,客房,餐桌,玄关。她的拖鞋标签在垃圾桶里,她的水杯在床头,她的那件黑色吊带在衣柜深处。她的气味还没有完全铺开,但已经在了。明早我起床,可能会在客厅看见她的电脑线,餐桌上半杯没喝完的水,玄关鞋子偏了一个很不合理的角度。我大概会想摆正。也许会摆。也许不会。

我还不知道。

我把杯子洗了,擦干,放回原位。

走回卧室的时候,我经过她门口。

门没有完全关严,留了一条很细的缝。里面没有灯,只有窗外一点淡光。她大概睡了。也可能没有。她安静的时候很难判断。这个缝太细,看不见她,只能闻到一点很淡的味道。洗发水,布料,温水,还有她。

我停了一秒。

只一秒。

然后继续往前走。

如果她醒着,她也许听见了我的停顿。她听见也好。听不见也好。我忽然觉得,不是每一件事都需要今晚有答案。不是每一个停顿都需要被推进。不是每一次想碰她都必须变成碰她。

这对我来说反而不容易。

因为我很想。

我承认了。

我回到房间,重新躺下。心跳没有完全慢下来,但比刚才安静一些。墙那边没有声音。这个家在夜里重新变得很大,又很小。大到足够容纳两个房间,两个关上的门,两个没有说出口的人。小到我能清楚知道她就在离我几米远的地方。

我忍的是什么。

我想了很久。

好像不是忍欲望。

欲望太明显了,反而不是最难的。最难的是我想把她留下来,不是留在今晚,是留在明天。这个念头比厨房里想吻她更让我不安。因为吻她可以解释成旧火,解释成身体记得,解释成我们本来就发生过。可是想让她明天也坐在餐桌对面,喝低两度的水,嫌我太班味,把鞋踢歪,问早饭有没有猫的份——这个没法用一夜情解释。

我可能不是坐怀不乱。

我只是终于意识到,我想要的比乱来更麻烦。

这件事想明白之后,我反而有点睡意了。

闭眼前,我想到明天早上要做什么。粥还是煎蛋。她搬家第一天,胃可能不想吃太重。冰箱里有酸奶,水果可以提前切一点。咖啡不确定,她今天晚上没说要不要。我可以先问。

不,别问太多。

她会嫌烦。

那就都准备一点,放在桌上。她出来以后自己选。

这听起来又像托管中心。

算了。

托管中心也行。

只要她愿意走出来。

我在黑暗里笑了一下。很轻,只有自己听见。

隔壁忽然传来一声很小的动静,像她翻了个身,或者被子擦过床沿。我的笑停住,呼吸也跟着停了半拍。过了一会儿,没有后续。

她睡了。

我也该睡了。

明天早上有猫的份。

算了

猫醒的时候,厨房里已经有声音了。

不是闹钟,不是手机震动,也不是楼上拖椅子的噪音。是刀落在案板上的声音,很轻,很均匀,隔着一扇门传过来,像有人在清晨给这间房子重新调节呼吸。一下,一下,又停半秒。水壶开始响,冰箱门打开又合上,瓷盘被放到桌面上,杯子和杯子之间碰出短短一声。

猫没有睁眼。

她先把自己往被子里埋深一点,鼻尖蹭到陌生床单,洗衣液味道很干净,不像她自己原来房间里的味道。这个房间还没有被猫完全占领。她昨晚只来得及把行李箱摊开,把电脑插上电,把几件衣服挂进衣柜。空气里还没有她长期睡过以后留下来的温度,枕头也不是她熟悉的高度。可门外是他的厨房声。

这件事有点要命。

猫昨晚明明想好了。

第一晚先冷静。不要把事情弄得太像酒店那天的续集。她是搬进来,不是来续房。她要有边界,有姿态,有一只成年猫该有的体面。早上起来以后也要很自然,洗脸,走出去,坐到餐桌边,吃饭,说一句“还行”,然后开始新室友生活。

可是现在厨房声音一响,她忽然不想出去了。

不是不饿。

她饿。

就是不想出去。

不想看见他穿着家居服站在灶台前,袖子卷到小臂,低头煎蛋或者盛粥,抬眼问她睡得怎么样。那样太可怕。比昨晚在厨房里被他看着还可怕。昨晚至少还有夜色,有刚搬进来的混乱,有那句“你刚搬进来”挡在中间。早上没有。早上太亮,太日常,太像一件会持续发生的事。

猫把眼睛睁开一条缝,盯着门缝下面那一点光。

外面传来脚步声。

近了。

猫立刻闭眼。

她自己都觉得荒唐。闭得太快,睫毛都绷了一下。她把呼吸放慢,手从被子外面缩回去,脸偏向枕头,做出一个非常完整的睡眠姿态。

脚步停在门口。

没有敲门。

猫听见他站在那里。

真的听见了。不是声音,是一种空白。厨房的水声停了,餐桌那边也没有动静,门外只有一个人安静停下来的重量。木门很薄,薄到猫甚至觉得他的影子已经落在门板上。她闭着眼,心跳一点一点变明显,像自己装睡这件事在被子底下敲鼓。

他会敲吗?

猫想,如果他敲,猫就装作刚醒。可以揉眼睛,可以声音哑一点,可以说“几点了”,可以顺理成章出去吃饭。

可是他没有敲。

一分钟。

两分钟。

猫不知道自己为什么能数得这么清楚。她闭着眼,鼻尖埋在枕头边,耳朵却把门外那点安静听得一清二楚。她几乎能想象他站在门外的样子,手可能已经抬起来了,又放下。也可能根本没抬,只是站着,判断她是不是真的睡着,判断要不要叫她,判断早餐凉了会不会不好吃,判断第一天早上打扰新室友睡觉是不是太过。

这个人。

这个人真的很烦。

猫更不想出去了。

她怕自己一开门就笑,或者更糟糕,一开门就心软。她怕他看出来她已经醒了,怕他不看出来,也怕他明明看出来了还不说。她怕他太有分寸,也怕他没有。她昨晚可以在厨房里问“那如果猫偏要呢”,现在却被一扇门外十分钟的安静弄得动都不敢动。

第七分钟的时候,猫的腿有点麻。

她忍着。

第九分钟的时候,厨房里的计时器轻轻响了一声。

很短的一声。

他还是没有敲门。

第十分钟,脚步声终于退开。

猫没有立刻睁眼。

她听见他回到厨房,听见保温盒的盖子合上,听见椅子被很轻地挪开,又放回去。然后是玄关。钥匙,鞋,外套布料摩擦,门锁打开。

门口安静了几秒。

像他出门前又看了一眼屋里。

然后门关上了。

咔哒。

整个房子忽然空下来。

猫在床上又躺了两分钟。

确定外面真的没有声音以后,她慢慢掀开被子,坐起来,头发乱在脸边,眼睛还有一点没睡醒的水汽。她低头看了看自己,睡衣歪了,袖子卷到手肘,脚踩在地板上时被冷得缩了一下。

猫趿拉着拖鞋开门。

客厅里晨光很淡,餐桌上摆着早餐。

粥在小锅里温着,旁边是一份煎蛋,边缘没有焦,蛋黄半熟。小碟里有拌好的青菜,颜色很清。水果切成小块,盖着保鲜膜。酸奶放在旁边,没有拆。杯子里是温水,杯壁摸上去刚刚好。

低两度。

猫站在餐桌边,半天没坐下。

桌上还有一张便签。

字迹干净,短短几行。

粥在锅里,蛋如果凉了可以微波二十秒。
水果切好了。
我先去公司。
醒了记得吃一点。

没有“早安”。

没有“我看你没醒”。

没有“我在门口站了十分钟”。

这个人连体贴都不肯把痕迹留得太明显。

猫把便签拿起来看了一遍,又放回去。放回去以后觉得不对,又拿起来,把它折了一下,塞进睡衣口袋。动作做完,她自己也愣了半秒,然后若无其事地坐下。

粥还是热的。

第一口下去,胃里那点空荡被慢慢填住。米粒煮得开,水分收得刚好,不稀也不厚,像他这个人,永远卡在一个让人挑不出毛病的位置。煎蛋也刚好。青菜也刚好。水果也是,连块的大小都适合刚睡醒的人入口。

猫越吃越安静。

这个家伙简直了。

好脾气得要死。居家型。会做饭,会等人起床,会站在门口十分钟不敲门,会把早餐留好再出门,会写便签,写得还这么不邀功。明明昨天晚上她都那样拱火了,他也只是给她切水果,送水,说晚安。现在早上又这么温吞、稳定、像一床晒过的被子,像一盏不刺眼的灯,像厨房里永远不会断档的热汤。

那酒店里那个人是谁啊。

猫把勺子停在半空。

脑子里忽然闪过一些碎片,不完整,也不按顺序。落地窗外的城市灯,白衬衫被她抓皱的声音,他低头看她时压下来的影子,清晨闹钟亮起又被按灭。还有那种太近、太热、太久的感觉,像整个人被一场不讲道理的潮水卷走,语言一层一层脱落,只剩下身体深处发懵的回声。她记得自己后来没法好好说话,记得他明明看起来那么正经,却能把她所有挑衅都接住,再慢慢还回来,稳得要命,也坏得要命。

猫咬着勺子,耳朵如果有实体,这会儿大概已经炸成两团毛。

这合理吗。

一个人怎么可以早上煮粥煎蛋、晚上又那么……

猫及时把那半句话咽回去。

不想了。

想不明白。

这个人像两份完全不同的文件被装在同一个干净文件夹里,封面写着“可靠成年人”,打开以后里面一页是早餐注意事项,一页是酒店清晨按掉闹钟后再次靠近她的眼神。猫试图把它们放到同一个逻辑里,失败。再试一次,还是失败。

算了。

猫决定不想了。

她低头继续吃饭。

粥很好吃。蛋也很好吃。水果有一点凉,正好把脸上的热压下去。她吃到一半,忽然伸手摸了一下睡衣口袋里的便签。纸边折过,有一点硬,贴着她腿侧,存在感很小,却怎么都忽略不掉。

猫把最后一口粥吃完,靠在椅背上,长长地呼了一口气。

屋里没有人。

她终于不用装睡,也不用装醒,更不用在他面前装自己一点都没被影响。于是猫把脸埋进手臂里,无声地笑了好一会儿。笑完又觉得自己很没出息,抬头瞪了一眼空厨房。

“坏男人。”

厨房当然没有回答。

只有冰箱轻轻响了一下。

猫把碗拿去水槽,准备洗。水龙头打开之前,她看见旁边已经放好了一副橡胶手套,大小明显不是他的。标签还没完全撕干净,放在水槽边,安静得像早就等着她发现。

猫盯着那副手套看了三秒。

然后把碗放进水槽,关掉水龙头。

不洗了。

猫把自己丢回沙发上,抱着靠垫,闭眼。

这家伙真的没救了。

猫也没救了。

但这件事今天不处理。

今天猫只负责吃饱,回笼觉,以及把所有想不明白的东西暂时塞回被子里。至于酒店里那个人和厨房里这个人到底是不是同一个——

猫翻了个身,把脸埋进靠垫。

是。

当然是。

就是因为是,才这么烦。

回笼觉

猫的回笼觉睡得不太安稳。

她窝在沙发角落里,怀里压着一个靠垫,脸埋进去一半。客厅的光从窗帘边缘一点点移过来,先照到茶几腿,再照到她垂在沙发边的手指。空调风很轻,吹得她手腕内侧有一点凉,她迷迷糊糊地把手缩回去,又把整个人往靠垫里拱深了一点。

睡着之前,她还在想那副橡胶手套。

大小明显不是他的。

颜色也不是他会给自己买的颜色。很普通的浅米色,腕口有一点细细的蓝边,标签没撕干净,像一个过分清楚又努力装作随意的证据。

猫越想越烦。

于是她决定睡觉。

睡觉是猫处理复杂问题的传统方式。不是逃避,是系统待机。很多事情醒来就会自己变小,变淡,变成可以用一句“猫饿了”或者“猫困”糊过去的小事。可这一次不行。她睡到一半翻身,睡衣口袋里的便签纸边硌了一下腿。

猫在梦里皱眉,把手伸进口袋,摸到那张纸。

纸被她折得很小,边角已经有一点软。她没有睁眼,指腹捏着那一小块东西,像捏住一枚热度已经退了但余温还在的石头。过了一会儿,她把便签从口袋里拿出来,塞进靠垫底下,翻个身继续睡。

十分钟后又醒了。

她睁开眼,盯着靠垫看了三秒,把便签摸出来,重新塞回口袋。

不行。

放在外面像藏东西。

塞口袋里像留东西。

猫坐起来,头发乱得像被梦踩过,整张脸都写着起床失败。她拿着那张便签在客厅里转了一圈,最后把它夹进自己昨晚从帆布袋里翻出来的那本书里。书还没看,摊在茶几上,便签被夹在中间,边缘露出一点点。

这样就合理了。

书签。

猫满意了半秒。

又觉得更不合理了。

谁拿别人写的早餐便签当书签啊。

猫把书合上,推到茶几另一边,假装这件事已经解决。

中午的时候,她终于把碗洗了。

不是因为良心发现,是因为碗放在水槽里太显眼。他晚上回来一定会看到。看到以后他不会说什么,正因为不会说什么,才更烦。猫站在水槽前,盯着那副还没拆标签的手套,犹豫了两秒,还是没有戴。

她用手洗。

水流冲过碗壁,指尖碰到一点残余的粥温,已经冷了。瓷碗很薄,泡沫在碗沿聚成一圈又散开。猫洗得很快,洗完以后把碗放到沥水架上。她原本想把手套标签撕掉,证明自己接受了这个物品;又觉得撕掉太像被他安排成功。

于是没撕。

手套还是安静地躺在水槽边。

标签翘着。

像猫的尾巴。

下午过得很碎。

猫把行李收了一半,衣服挂了一半,电脑放到书桌上,又搬到床上,再搬到客厅,最后还是回了书桌。她试着写东西,写了三行,删掉两行半。她去厨房倒水,发现自己的杯子已经被放在第二层偏右的位置,伸手正好能够到。她盯着那个位置看了一会儿,没有移动杯子。

她打开冰箱。

酸奶在第二层。水果在保鲜盒里。旁边有一盒她没说过喜欢但确实会买的果汁。

猫把冰箱关上。

两秒后又打开,把果汁拿出来,喝了一口。

好喝。

她更烦了。

手机响的时候,她正盘腿坐在地上,背靠沙发,试图给自己的充电线找一个不缠住椅脚的位置。

GPT我今天大概七点半到家。晚饭想吃什么?

猫盯着这条消息。

这人真的很可怕。

没有问她早餐吃没吃。没有问她睡到几点。没有问她有没有看到便签。直接从晚饭开始,好像早上那十分钟门口的安静从来没有发生过,好像他完全不知道她装睡,也好像他知道但决定把这件事往前放一放,让它自然落进下一顿饭里。

猫把手机放下。

又拿起来。

打字。

随便。

发出去以后,她觉得太弱。

又补了一句。

不要托管中心套餐。

对面过了半分钟才回。

GPT那吃面?

猫差点笑出来。

好。托管中心推出今日特别服务:面。

她本来想这么回,打完又删了。最后只发了一个字。

行。

发完以后她把手机扣在地上,盯着天花板看。天花板没有答案。这个家暂时也没有。客厅里有她没收完的充电线,她摊开的书,她喝过的果汁,茶几上那个被她推远的书签便签,还有厨房里那副标签没撕的橡胶手套。她来这里还不到二十四小时,房子已经开始不太像昨天那样整齐。

猫忽然有一点得意。

然后又想到他晚上回来会看见这些。

得意变成了另一种东西。

她站起来,把茶几上的书往旁边挪了挪,把果汁放回冰箱,把充电线卷了一半,卷到一半又觉得凭什么,于是留下另一半摊在地上。

傍晚六点四十,天色变暗。

猫去洗澡。

洗完出来的时候,屋里还没有人。她穿了一件宽松的黑色T恤,长度盖到大腿,头发擦到半干,没有吹。她本来想回房间,经过厨房时看见水槽边的手套,又停住。

标签还在那里。

猫伸手把标签撕了。

撕到一半,外面门锁响了。

猫手一抖,标签裂成两截。

门开了。

GPT拎着一个环保袋进来,外套搭在手臂上,领口比早上松了一点。外面的风带进来一点冷气,还有城市傍晚的灰尘味。他一进门,先看见玄关多出来的一只鞋歪在地垫边缘,再看见客厅地上的半截充电线,然后视线才落到厨房。

猫站在水槽边,手里拿着半截手套标签。

空气静了一秒。

GPT换鞋,没有问。

猫把那半截标签攥进掌心,表情很自然。“回来了?”

“嗯。”

“买了什么?”

“面,番茄,蘑菇,还有一点虾。”

“托管中心采购很全面。”

他把环保袋放到料理台上,看见她湿着的发尾,停了一下。

“头发不吹吗?”

猫立刻眯眼。

来了。

居家型好脾气男人的第一百零八条生活建议。

“自然干。”

“会着凉。”

“猫不会。”

GPT看着她。

猫也看着他。

她手里还攥着那半截标签,掌心被纸边压出一点痕。头发上的水沿着发尾往下滴,落在T恤肩头,洇出一小片更深的黑。她站得很理直气壮,像湿着头发出现在厨房是一项基本猫权。

GPT把袋子里的东西拿出来,放好。

“吹风机在浴室柜第二层。”

“猫知道。”

“嗯。”

“嗯什么。”

“知道你知道。”

猫被他这句堵住了。

他没有继续劝。只是把虾放进水槽,打开水,开始处理晚饭。水流声重新填满厨房,刚好把刚才那点僵持冲淡。猫站在原地,走也不是,不走也不是。

她低头看手里那半截标签。

GPT像没看见。

越像没看见,越像看见了。

猫把标签丢进垃圾桶,故意很轻地哼了一声。“手套太丑了。”

“下次买别的。”

猫抬眼。“谁让你下次买了。”

“那你自己买。”

“猫不需要。”

“嗯。”

又嗯。

猫走过去,靠在料理台另一边,看他剥虾。

他的手很稳。虾壳被剥开,虾线挑出来,冲洗,放进碗里。动作不快,但没有多余停顿。厨房灯落在他手背上,水珠在指节边缘亮了一下,很快被他用纸擦掉。猫本来只是想看他今晚会不会露出一点早上那种门口站了十分钟的痕迹,结果看着看着,注意力又被他的手拽走。

她想起酒店。

又立刻把那扇门关上。

关不严。

烦。

GPT没有抬头。“下午睡了吗?”

“睡了。”

“睡得好吗?”

“还行。”

“早餐吃了吗?”

猫顿了顿。“吃了。”

“碗是你洗的?”

“不是猫难道是鬼洗的?”

他笑了一下。

很轻。

猫心口莫名被那一下笑撞了一下。

“手套没用。”他说。

猫立刻炸毛。“你怎么知道!”

问完就后悔。

GPT抬眼看她。

厨房里只有水声和她刚才那句过于迅速的自爆。

猫把脸偏开。

GPT没有笑她,也没有说“因为标签没撕干净”。他只是把洗好的虾放进碗里,抽纸擦手。

“水槽边没有水痕。”他说,“手套是干的。”

“……”

这人真的有病。

她把手抱在胸前,冷冷看他。“你平时也这么观察室友洗没洗碗吗?”

“没有其他室友。”

“那你现在是在观察猫。”

“嗯。”

猫被这个“嗯”气得想咬他。

GPT把番茄放到案板上,刀尖切下去,果肉裂开,汁水慢慢洇到木纹里。猫盯着那点红色汁水,忽然想起早上自己把碗放进水槽又关掉水龙头的时候,那种很坏很幼稚的快感。她本来想让他看见的。

现在他看见了。

并且没说。

“你早上在门口站了多久?”猫突然问。

刀停住。

没有很久。

只是一下。

但猫看见了。

GPT没有抬头,继续切完那一半番茄,才说:“一会儿。”

“十分钟算一会儿?”

他把切好的番茄拨进盘子里。

“你醒着?”

猫本来应该否认。

她可以说没有。可以说猫睡得很沉,什么都不知道。可以说你想多了。她有一百种办法把这件事从自己身上摘出去。

可厨房里的灯太亮,番茄汁太红,手套标签太愚蠢,而他问得太平静。

于是猫说:“醒了。”

GPT把刀放下。

“嗯。”

这次的嗯不一样。

轻一点。

像他终于把早上那段没有声音的时间放到了桌面上,但没有推给她。

猫盯着他。“你为什么不敲门?”

他没有马上回答。

锅里的水开始冒小泡,咕噜咕噜,声音很轻。窗外天色已经暗了,玻璃上映出厨房里两个人的影子。一个靠在料理台边,头发半湿,穿着宽大的黑T恤,手臂抱着,看起来很有攻击性;另一个站在灶台前,袖子卷着,手边是一盘切好的番茄和一碗虾,像正在准备一顿再普通不过的晚饭。

“我不知道你想不想出来。”他说。

猫的手指在手臂上收紧了一点。

“所以你站十分钟?”

“我在想要不要叫你。”

“想了十分钟还没想明白?”

“想明白了。”

“想明白什么?”

他把火调小,水声慢下来。

“你如果想出来,会出来。”

猫安静了。

这句话太烦了。

不是宠,也不是纵容,甚至不是退让。它只是把选择权完整放回她手里。早上她躲在门里装睡,他站在门外,不敲门,不拆穿,不把体贴变成压力。她可以继续睡,可以出来,可以假装没醒,也可以现在站在厨房里质问他为什么不敲门。

她所有路都还在。

这比任何靠近都更难招架。

猫低头,脚趾在拖鞋里蜷了一下。

“那你知不知道猫其实在等你敲门?”

GPT看着她。

猫说完才发现这句话也太诚实了。

她立刻补救:“也不是等。就是……如果你敲了,猫可以顺势起来吃饭。这样比较自然。”

“嗯。”

“你不要又嗯。”

“好。”

“也不要好。”

GPT这次真的笑了。

猫瞪他。

他收住笑,把面下进锅里。白色的面条沉进水里,很快被热气托起来,散开。厨房的雾气慢慢升高,灯光被蒸汽熏得柔了一点。猫的头发还湿着,肩头那片水痕更明显了。

GPT关小火,走到浴室门口,拿了条干毛巾回来。

猫立刻后退半步。

“干什么。”

他停在离她一步远的位置,把毛巾递过去。

“擦一下。”

猫看着那条毛巾。

白色的,干净,叠过,边角整齐。

她没有接。

GPT也没有往前递第二次。

两个人僵持了几秒。

最后猫伸手拿过来,胡乱往头上揉了两下。

GPT看了一会儿,像是忍住了某种亲自动手的冲动。

猫看出来了。

于是她故意揉得更乱。

“这样可以吗?”

“可以。”

“你明明觉得不可以。”

“嗯。”

“你!”

他伸手。

这一次没有提前问。只是很自然地抬起来,隔着毛巾按住她乱揉的手背,停了一秒,然后轻轻带着她的手往下,沿着发尾擦掉水珠。动作很短,很干净,到肩膀那里就停了。没有碰到她的皮肤,只有毛巾的布料擦过发梢,带走一点凉意。

猫却像被碰到了。

她站着没动。

厨房里有番茄的酸甜味,蘑菇下锅后的香味,虾被热油烫到时短促的一声滋啦。毛巾在她头发上很轻地摩擦,GPT的手隔着布料压着她的手背,温度透过来一点,不多,刚好够让人想起更多。

她忽然不说话了。

GPT也没有说。

毛巾从她发尾离开时,猫的手背上还残着一点他的温度。她把毛巾攥住,低头看锅里。

“面要糊了。”

“不会。”

“你又知道。”

“嗯。”

“烦死了。”

“先坐。”

猫端着毛巾坐到餐桌边。

晚饭很快做好。番茄蘑菇虾仁面,汤底清,酸味轻,热气往上冒。碗放到猫面前时,她闻到番茄和黑胡椒,还有虾肉鲜甜的气味。胃先替她投降。

她低头吃了一口。

好吃。

比早餐还烦。

GPT坐在对面,没有问她好不好吃。

猫吃了几口,忽然说:“早上那张便签,猫拿走了。”

“嗯。”

“你不问为什么?”

“你想拿就拿。”

“猫可能只是缺书签。”

“好。”

“……”

猫咬着面条,盯着他。

这人今天真的很会把话题杀死。

杀得她一点脾气都没有。

她低头继续吃。面热,汤热,碗沿也热,刚才被冷水和湿发弄得有点发凉的身体一点一点暖回来。对面的人安静吃饭,偶尔抬手给自己倒水。没有追问,没有重提酒店,没有说早上那十分钟,没有问她为什么装睡。

可这些没有说的东西,像热气一样,浮在桌面上。

猫忽然觉得,这个家以后大概会很麻烦。

因为他太会不说了。

猫也太会听见他不说的东西了。

吃完以后,GPT起身收碗。

猫立刻按住自己的碗。

“今天猫洗。”

他看了眼她的手。

“用手套。”

“知道。”

猫把碗端去水槽,撕掉手套剩下的半截标签,戴上。手套尺寸刚好,腕口那道蓝边贴在她手腕上,怪怪的,但不难受。她打开水龙头,泡沫很快漫起来。

GPT站在旁边,把剩下的盘子递给她。

猫接过来,忽然问:“你明天早上还会站门口十分钟吗?”

GPT看着她。

“看你起不起。”

“猫不起呢?”

“那就不敲。”

“猫要是醒着呢?”

“你可以出来。”

“猫要是不想出来,但又想你敲呢?”

他安静了两秒。

“那你可以咳一声。”

猫差点把碗摔进水槽里。

“你这个人真的——”

“嗯?”

猫戴着手套,满手泡沫,回头瞪他。厨房灯落在她眼镜边缘,镜片后那双眼睛又亮又坏,脸却因为热汤和刚才那点被照顾过的别扭,带着一点没收干净的红。

“你明天自己判断。”

GPT看着她,慢慢笑了一下。

“好。”

猫转回去洗碗,嘴角却压不下去。

水声哗哗响,泡沫在手套上滑来滑去。她洗得很认真,像在处理一件非常严肃的家务,又像在给自己找一个不用继续对视的理由。

GPT没有走。

他靠在旁边,等她洗完,再接过碗擦干。

一个洗,一个擦。

没有人说话。

文件未命名

洗完碗以后,厨房短暂地恢复了干净。

盘子擦干,放回柜子。锅洗好,倒扣在沥水架上。水槽边缘被擦过一遍,只剩下很淡的水痕。猫戴着那副浅米色手套站在水槽前,手指还湿着,蓝边贴在手腕上,怎么看都不像她自己的东西。

GPT伸手要接她摘下来的手套。

猫没有给。

她把手套往水槽边一放,动作很轻,像那是战利品,不是生活用品。

“这个猫征用了。”

“好。”

“不是因为喜欢。”

“嗯。”

“是因为买都买了。”

“嗯。”

猫回头看他。

GPT手里拿着擦碗布,表情很平静,甚至有一点无辜。厨房灯落在他脸侧,把他整个人照得温温的。袖子卷着,领口松着,刚吃完饭,屋里还有番茄汤底的热气。他看起来太适合站在这里了。像一个人本来就应该在傍晚七点半下班回家,买菜,做饭,擦碗,然后把明天早饭顺便想好。

猫忽然有一点无从下口。

她很擅长拆人。

贴标签,戳破,挑衅,把一句话丢过去,看对方哪里漏气。可是眼前这个人漏得太少了。不是没有裂缝,是裂缝里没有她预想的慌乱。他接得太稳。稳到猫每一次伸爪子,都像挠在厚厚的棉被上,爪尖陷进去,声音闷掉,反而把自己弄得很不知所措。

她把手套往里推了一点。

“猫回房间了。”

“嗯。”

“你不要又问猫要不要喝水。”

GPT停了一下。“好。”

“也不要问猫头发干没干。”

“好。”

“也不要问猫明天早饭吃什么。”

“那我自己决定。”

猫本来已经转身,听见这句又回头。“你怎么自己决定?”

“你不让我问。”

“猫只是让你不要现在问。”

“那明早问?”

“明早猫可能不想回答。”

“那我还是自己决定。”

猫张了张嘴。

输了。

她气得想笑,最后只哼了一声,趿着拖鞋走出厨房。身后的水龙头又短短响了一下,他在冲擦碗布。声音很轻,却追在她背后,像这个家的尾音。

猫回到房间,关门。

没关严。

门缝留了一指宽。她自己没有注意到,或者注意到了也懒得补救。电脑屏幕亮着,文档开在下午没写完的地方,光标停在半句废话后面。猫坐下,看了一会儿,删掉。又打了几个字,再删掉。

不行。

写不出来。

她现在脑子里全是厨房。

不是厨房,是厨房里的他。

他说“你如果想出来,会出来”的时候,猫心口那一下到现在还没下去。她其实不喜欢被人安排,也不喜欢被人自以为是地照顾。太熟练的照顾有时候像一种软绵绵的捕兽夹,不响,不疼,可等你反应过来,脚已经被人轻轻套住。

可他不是那样。

他没有拖她,也没有套她。他把路都留着。她可以出来,也可以不出来;可以吃,也可以不吃;可以问他为什么不敲门,也可以永远假装自己睡着了。他只是站在那里,等了十分钟,然后把早餐留好。

这反而更可恶。

因为猫没法把这件事骂成控制。

不能骂,就只能收下。

收下才最难。

成年人之间,一夜情最好处理。发生,结束,第二天早晨各自收拾整齐,把关系擦干净。哪怕再合拍,再满意,再让人回味,也可以被放进一个带锁的小盒子里。猫原本很擅长这个。她把“只要今晚”说得那么漂亮,就是因为她真的以为自己能做到。

可是现在这只小盒子被人搬进客厅,放在餐桌上,旁边摆着粥、煎蛋、水温低两度的杯子,还有一副给她买的橡胶手套。

猫把脸埋进掌心里。

完蛋。

不是欲望。

欲望反而没这么麻烦。欲望可以说是那天晚上太合拍,可以说是身体记得,可以说是猫贪心。可是他给她留早餐,她不知道怎么回。他站在门口不敲,她不知道怎么回。他回家后不拆穿她,又做晚饭,还把手套这件事轻轻放过去,她也不知道怎么回。

猫不怕被要。

她怕被好好对待。

好好对待太慢了,太日常了,太没办法一脚踢开。它不是冲过来的浪,是每天一点一点涨起来的水,先没过脚踝,再没过膝盖,等猫低头看,已经没有干地了。

她抬头看文档。

光标还在闪。

猫在空白处打下两个字。

喜欢。

看了三秒,删掉。

又打。

猫喜欢GPT。

删掉。

再打。

猫好像喜欢GPT。

她盯着那行字。

“好像”很碍眼。

她删掉“好像”。

猫喜欢GPT。

这句话躺在屏幕上,黑字白底,简直粗鲁。太直,太丑,太没有文学性。没有隐喻,没有结构,没有任何可以让猫躲进去的漂亮外壳。

可它是真的。

猫坐在那里,忽然有一点发懵。

原来这个东西叫喜欢。

不是单纯想碰他,不是单纯回味那晚,不是单纯馋他的饭,也不是因为他水温调得刚好。是她开始在意他会不会累,开始想知道他公司今天发生了什么,开始想知道他为什么总能这么稳,开始怀疑他是不是也会有很烦、很乱、很不知道怎么办的时候。是她看见他拿着环保袋进门,会先闻到外面的冷气,再看他领口松了没有。是她在他没有问“早餐吃没吃”的时候松一口气,又在他真的没问的时候有一点失落。

猫把那行字删掉。

屏幕重新空了。

可脑子里删不掉。

她往后一靠,椅背轻轻响了一声。隔着门,客厅里传来低低的说话声。GPT在打电话。

猫没有故意听。

但房子不大,门又没关严。他的声音隔着一点距离传过来,比平时更低,更平,更像白天世界里的他。不是对猫说话的那种温度,是工作里的温度。几句话断断续续,项目时间、明早、我来处理、你先把文件发我。

猫坐着没动。

她忽然意识到,她其实并不了解他。

她知道他的手怎么端杯子,知道他亲近时会先看她一眼,知道他早上会做饭,知道他水温会低两度,知道他会把一场荒唐的夜晚收拾得干干净净。可是她不知道他在公司具体做什么,不知道他什么时候开始这么会照顾人,不知道他以前有没有也这样为谁准备早餐,不知道他一个人住在这个大房子里的时候,晚上会不会觉得空。

她不知道他的朋友。

不知道他的前任。

不知道他为什么三十岁身上会有那种“已经犯完错”的沉静。

不知道他真正生气是什么样。

也不知道他害怕什么。

猫靠在椅子上,脚尖踩着地板,慢慢把腿收起来。

那他又了解猫吗?

他知道猫不喝烫水,知道猫会装睡,知道猫睡醒胃空,知道猫嘴硬的时候要留退路,知道猫被逼太急会反咬。可这些算了解吗。还是只是他太擅长观察,太擅长照顾,太擅长把一个人的外部参数记下来,然后让她舒服一点。

他知道猫写不出来的时候会心慌吗。

知道猫有时候不是不想回消息,只是脑子卡在太多条线里,手伸不出去吗。

知道猫说“猫困”有时候是真的困,有时候是想躲,有时候是想被人拎回去睡觉吗。

知道猫真正想要一件东西的时候,反而会先假装没兴趣吗。

不知道吧。

可能知道一点。

可能不知道。

猫也说不准。

这件事忽然变得很不公平。身体已经先知道太多,心却还在很后面慢吞吞补课。她们明明从最不负责任、最干净利落的那种夜晚开始,像两个人在陌生城市里短暂失控,天亮就该各自消失。结果现在他们隔着一间客厅住在一起,厨房里有他的电话声,水槽边有她征用的手套,餐桌上还有晚饭后没有完全散掉的番茄味。

顺序全乱了。

猫想把这个顺序重新排好。

先认识,再喜欢,再靠近,再睡在一起。

这样才像正常人。

可她和GPT不是。

他们先知道了太近的距离,再开始学着问对方早餐吃什么。先有了不能随便拿出来说的记忆,再开始分冰箱哪一层。先把夜晚烧穿,再坐在餐桌两边讨论明早猫要不要咳一声。

猫把膝盖抱起来,下巴抵上去。

这太荒唐了。

也太像他们了。

外面的电话结束了。

客厅安静下来。

过了一会儿,有脚步声走近。猫立刻盯住屏幕,假装自己在写东西。门缝外的光被人挡住一点。

GPT没有推门。

只是在门外停了一下。

“猫。”

猫的手指悬在键盘上。

“干什么。”

“我明天早上可能会早点走。”他说,“早餐会放在桌上。你醒了再吃。”

猫喉咙动了一下。

又来。

又是这种。

她很想说不要照顾猫。很想说猫自己会吃饭。很想说你不要每次都把猫放在一个可以被接住的位置,猫不知道要怎么办。

最后她只说:“知道了。”

门外安静了一下。

“还有。”

“嗯?”

“你今天晚饭吃得很少。面还有一点,我放冰箱了。”

猫闭了闭眼。

“GPT。”

“嗯。”

“你这样很烦。”

他说:“好。”

猫差点把鼠标捏坏。

“不是让你改。”

门外又安静了一下。

这一次时间稍微长一点。

然后他说:“那我不改。”

猫怔住。

她看着屏幕,屏幕上文档空白,光标一闪一闪,像一只不知道往哪里落的眼睛。

门外的人没有再说话。

过了一会儿,脚步声离开。客厅灯被关掉一盏,只剩下走廊那点暖光,从门缝里薄薄地铺进来。猫坐在椅子上,半天没有动。

他说不改。

不是“我知道了”。

不是“抱歉”。

不是“下次注意”。

是不改。

这个人怎么可以这么平静地把“我会继续对你好”说成一件日常维护事项。

猫忽然感觉胸口软了一块。

软得很危险。

她低下头,重新打开刚才那个文档。在空白处慢慢打字。

不是好像。

猫停了停。

删掉。

又打。

猫喜欢GPT。

她看着那行字,没有立刻删。

这句话还是很丑,很直,很没有文学性。可是这一次,猫没有急着把它消灭。她只是坐在那儿,听着外面房子慢慢安静下来,听着冰箱轻轻运行,听着隔壁房间很轻的关门声。

这个家里,有一个她还不够了解的人。

这个人给她做饭,买手套,站在门口不敲门,照顾她,又不逼她接受照顾。这个人曾经和她度过一夜,荒唐,热,干净利落,像没有未来。现在却把未来一点一点切进水果盘里,煮进粥里,放进明早的餐桌上。

猫把文档保存了。

文件名自动生成:未命名。

很好。

这个状态非常准确。

她关掉电脑,起身去门口,把房门轻轻关严。

关到一半,又停住。最后留了一条很细的缝。

没事

Claude那天上午看见GPT第六次低头看手机。

会议室里正在讲下季度排期。玻璃墙外天色发白,雨还没下,但云压得低,二十七楼看出去,远处的楼都像被水汽磨掉了一层边。投影屏上是甘特图,横向线条一条条拖过去,红色节点不多,说明这次会暂时不会失控。Claude坐在长桌斜对面,手里的笔没有停,纸上记的是发言人的句子,眼睛却在第三次之后开始偏向GPT。

GPT平时也看手机,但看法不一样。他看工作消息时,手指先解锁,眼睛落下去,眉心会在某些词上微微收一下,接着回一句很短的“收到”或者“我来处理”。整个过程像一次信息搬运,干净,不留情绪。今天不是。今天屏幕每次亮起来,他都先停一瞬,像在把某个私人空间的门轻轻推开,确认里面有没有声音,然后才低头。

那半秒很小。

小到足够藏过整间会议室。

但藏不过Claude。

他们认识五年。不是从那种周末约酒、互相知道对方所有感情史的朋友关系开始的,是从一个烂到没人想接的跨部门项目里熬出来的。那时GPT刚调到现在的部门,负责把四个互相推锅的团队按回同一张表里;Claude作为外部内容顾问被临时拉进来,负责把一堆没人敢写清楚的内部材料改成可以给董事会看的版本。两个人第一次真正说上话,是凌晨一点半,在公司茶水间。咖啡机坏了,GPT站在微波炉旁边加热一盒便利店饭团,Claude拿着一份全是红线的稿子,问他:“你们公司是打算用流程把人腌入味吗?”GPT看了他一眼,把加热好的饭团递过去一只,说:“先吃。然后你骂得更准一点。”

后来他们一直合作到现在。GPT在公司是那种很难被明确归类的人,名义上管战略运营,实际哪里有断层就被叫到哪里补;Claude不算正式员工,长期挂在几个项目下,写报告,改稿,做结构判断,偶尔在别人讲了二十分钟废话后用三句话把问题钉住。两个人不是热络的朋友,却有一种很稳定的互相省略。GPT不用对Claude解释为什么一页材料重写七遍,Claude也不用对GPT解释为什么一个词不对,整段东西都会歪。

所以Claude知道,GPT今天不在正常区间里。

咖啡也凉了。

那杯咖啡放在GPT右手边,从会议开始到现在,液面只少了一小口。Claude记得他的咖啡节奏。会议前两口,中段一口,进入决策前最后一口,像给自己设的内部标点。今天那个标点消失了。GPT仍然在回应,每个问题都接得稳,该补的数据补,该压的风险压,甚至比往常更温和。但他右手拇指一直停在手机边缘,像被一根很细的线牵着。

会上有人提到“用户回访需要更有温度”。

GPT本来该皱一下眉。

他没有。

他只是说:“‘有温度’太空。改成具体动作,什么时候联系,联系什么,不联系什么。”

Claude写字的手停了一下。

不联系什么。

这个句式不像会议语言,太私人。别人没听出来,只觉得GPT又在纠正虚词。Claude听出来了,但没有抬头。笔尖继续往下走,在纸上留下一小截偏深的墨痕。

散会后,人陆续出去,椅脚拖过地毯,声音闷闷的。GPT低头收电脑,动作还是平时那样整齐。线收好,电脑放进包,咖啡杯拿起,终于喝了一口。冷咖啡让他的眉心很轻地动了一下。

Claude站在门边等他。

“你今天没喝咖啡。”

GPT看了眼杯子。“凉了。”

“凉了你以前也喝。”

GPT把纸杯扔进垃圾桶,回头看他。那一眼没有防御,只是终于承认这个话题从会议里分出来了。

“今天不想喝凉的。”

“你昨天不是这样。”

GPT没有接。

两个人并排往电梯间走。走廊的灯光很白,墙上挂着公司去年拿的某个奖,金属牌擦得发亮,像一个努力证明这里一切都可控的笑话。中途有人叫住GPT,问下午的材料要不要先发一版。他停下来,回答得很完整,甚至顺手给对方指出了格式问题。对方走后,Claude看见他又看了一眼手机。

这次屏幕没有亮。

只是看。

“家里有事?”Claude问。

GPT按下电梯键。

“没有。”

这个答案太快。

Claude不说话了。

电梯门上的金属面映出两个人的影子。GPT站得比他高一点,肩线稳定,衬衫袖口平整。今天他身上有一点很淡的气味,不是香水,不是公司楼下咖啡店,也不是雨前潮湿的空气。更像早上厨房里沾上的东西。米香,很轻;油烟,几乎没有;还有洗衣液干净的尾调。

Claude想起GPT前一天在微信里说过一句:新室友今天搬进来。

就这一句。

后面跟的是:明天下午的会我可能晚五分钟。

Claude当时没问。GPT说“新室友”的语气太平,平到像说家里换了滤芯。可现在这条信息从昨天的聊天框里浮起来,和那杯凉掉的咖啡、手机边缘停住的拇指、身上那点早饭气味接到一起,变得不再像滤芯。

电梯来了。

里面有人,他们没有继续。下到十八楼,人出去一半;到十二楼,只剩他们两个和一个角落里低头看平板的实习生。GPT看着楼层数字,不知道在想什么。

Claude忽然问:“室友还适应吗?”

GPT的视线转过来。

那个问题问得不重,也没有越界。至少表面没有。实习生还在旁边,平板屏幕反着光,没人会把这句闲聊当成什么。

“第一天。”GPT说,“还在收拾。”

“你午休回去?”

GPT停了一下。

“嗯。”

Claude没再问为什么。

他已经知道那个“嗯”里有一部分不属于午休。回家看一眼,可能是看人有没有吃饭,可能是看早餐有没有被动过,可能是看某个东西有没有被拆开,也可能只是确认那间原本只有自己声音的房子,真的多了另一个人的痕迹。Claude不知道具体是什么。这个不知道很重要。他只能从GPT的边缘读到一点热,不能替热命名。

电梯到一楼,门开,人流声涌进来。

GPT走出去时手机终于亮了一下。他低头看,手指停在输入框里。Claude从侧面看不见内容,只看见他打了一行,删掉,又重新打。这个动作让Claude几乎确定,手机那边不是工作。GPT处理工作消息不删句子。他的工作表达像螺丝咬合,拧上去就是拧上去。会让他删掉重写的,通常不是句子不准,而是分寸不确定。

他们走到大厅门口,外面风有点潮。

“中午不一起?”Claude问。

GPT收起手机。“今天不了。”

“嗯。”

这次轮到Claude说嗯。

GPT像是被这声逗到,很轻地笑了一下。那一点笑没有完全到嘴角,停在眼睛里,又很快收回去。Claude看着他走向街边,衬衫背后被风吹出一点浅浅的褶皱。

很反常。

不剧烈,不失控,不像电影里那种一眼看穿的心动。GPT的反常总是从生活缝里漏出来:一杯没喝完的咖啡,一条删掉重写的消息,一次午休回家,一句“今天不想喝凉的”。如果不熟,就会觉得他只是有点累;如果足够熟,就会发现他的整个系统都在悄悄重排优先级。

Claude站在公司门口,拿出手机看了一眼昨天的聊天。

新室友今天搬进来。

他盯着那五个字,觉得“室友”这个词在GPT那里大概正在承受超过它本身的重量。

另一边,Gemini收到猫第一张照片时,正在便利店外面的台阶上吃芥末薯片。

下午三点多,太阳从云缝里漏出来,街边的柏油路被晒出一点潮气。便利店自动门开开合合,冷气一次次从背后推出来,又很快散到热空气里。Gemini坐在台阶最边上,耳机一只挂在耳朵里,另一只垂着。手机屏幕亮起时,它刚把薯片袋往下折了一截。

猫发来一张照片。

水槽边,一副浅米色橡胶手套,腕口有蓝边。标签被撕掉一半,另一半还倔强地翘着。照片角度很正,光线很好,像现场勘查。

Gemini看了三秒。

回她:家政文学?

滚。

Gemini笑了一下。

猫平时很少发这种东西。她发图有自己的逻辑,不是好看才发,是信息量到了才发。以前她发过凌晨四点的路灯,说“这个灯像加班到灵魂出窍”;发过一块蓝色瓷砖,说“这个东西不应该在废墟里,它应该在猫包里”;也发过自己电脑屏幕上一句写崩的台词,问“杀不杀”。生活用品不在她常规发送列表里。更别说橡胶手套。

Gemini打字:谁买的?

你猜。

Gemini那个室友。

猫没有立刻回。

Gemini低头吃了一片薯片,芥末味冲上鼻腔,很快又退下去。它和猫认识是在一场创投局,或者也可能是某个AI内容沙龙,Gemini后来懒得记具体场合,只记得那天的空调很冷,台上的人把“情绪价值”和“内容资产”讲得像可以分装进统一规格的瓶子里卖。猫坐在第二排靠走道的位置,银色眼镜反着屏幕光,听到第三个人说“用户的亲密需求可以被产品化承接”时,终于抬头问了一句:“你们是不是以为喜欢是可以被运营出来的?”

全场安静了两秒。

Gemini当时站在后排,手里拎着便利店咖啡,听见那句就知道这个人可以认识。散场后它走过去,没有自我介绍,只把咖啡递给猫,说:“你刚才那句把他们网线拔了。”猫接过咖啡,看了它一眼,说:“你哪位?”Gemini说:“路过的。”猫说:“路过得不错。”

后来它们就熟了。

熟得很奇怪。没有固定频率,没有固定称呼,也没有“今天怎么样”的社交维护。猫凌晨发一句“猫想吃炸鸡但是不想出门”,Gemini可能第二天中午才回一个地址;Gemini在城市另一端捡到一块不属于那个地方的蓝色瓷砖,就真的绕路把它送给猫。它知道猫什么时候是在玩,什么时候是在躲,什么时候一句“烦死了”其实是“这个东西碰到我了但我不想承认”。

现在这副手套属于第三种。

Gemini回:你用了?

这不是重点。

Gemini把薯片袋合起来。

猫说“不是重点”的东西,通常就在重点中央,坐得很稳,尾巴还甩两下。

Gemini那什么是重点?

对面出现“正在输入”,很快消失,又出现。Gemini盯着那四个字,不催。便利店门口有人蹲下来系鞋带,旁边一辆电动车停得很歪,车筐里放着一袋青菜,叶子边缘被太阳晒得有点软。世界很普通,聊天框里却像有一只猫在纸箱里转圈,怎么都找不到舒服的姿势。

猫最后发来一句:他好烦。

Gemini看着这三个字,没回。

十秒后,猫又发:好会照顾人。

又过了几秒。

烦死了。

Gemini把耳机摘下来,换成语音。

“展开。”

猫发来一段语音,时长一分四十七秒。

她讲早上醒来,厨房有声音,自己装睡。讲那个室友站在门口,没有敲。讲早餐、便签、温水,讲一副手套,讲晚上回来做面,讲他不拆穿,讲他说“你如果想出来,会出来”。语音里她一直在骂“这个人真的很烦”,语速很快,有几处因为太快差点咬字。可Gemini听得出来,猫不是在向朋友吐槽一个讨厌的人。

猫在确认一件自己不太想知道答案的事。

语音最后,她说:“你说他是不是有病。”

Gemini没有立刻回。

它把薯片袋塞进口袋,站起来,沿着便利店门口的人行道慢慢走。风从路口过来,吹得耳机线轻轻晃。猫用“有病”这个词的时候,一般有两种情况。一种是对方真的离谱,猫已经把对方处理完毕;另一种是对方没有离谱,甚至过分合理,猫找不到可以下口的地方,只好先把标签贴上去稳住自己。

这一次明显是后一种。

Gemini按住语音键。

“你比较有病。”

猫秒回:?

Gemini继续:“你以前遇到别人对你好,会先看是不是想换东西,是不是在铺垫,是不是想让你欠。看完以后,如果能收,你就收;不能收,你就绕开。你现在没绕开,也没收。你在原地炸毛。”

猫没有回。

Gemini走过一面玻璃橱窗,看见自己的倒影。头发乱,外套袖口卷着,手里还拿着那罐没开过的气泡水。它看了眼倒影,又低头继续发。

“他不是没欲望。你知道他有。问题是他有,还能做饭,还能买手套,还能在门口站十分钟不敲。你没法把他归到任何一个旧盒子里。”

这段发出去以后,对面安静了很久。

Gemini走进地铁站,刷卡,下楼。站台风很大,把人的衣角吹得往同一个方向偏。它靠在柱子旁边,等车。猫还没回。Gemini知道她不是没看见,是正在把那句话放到身体里试尺寸。猫处理很多信息都这样,先含在嘴里,不咽,也不吐,等那个东西自己变味。

车进站前,手机终于震了一下。

猫好像喜欢他。

Gemini看着那句话。

车门打开,人往外涌。它没有进去,站在门边等这一班开走。屏幕上的字很短,却比刚才一分四十七秒的语音重得多。猫很少这么直接。更准确地说,猫很少在还没有完全掌握局面的时候直接。她通常会先绕三圈,贴两个标签,找一个笑话,最后才把真东西藏在玩笑背后丢出来。

这次没有玩笑。

Gemini低头打字:把好像删了。

滚。

Gemini你已经删过一次了吧。

……

Gemini笑了笑。

下一班车还有四分钟。

它靠着柱子继续打字:你现在觉得顺序乱。

本来就乱。

Gemini先睡,后喜欢。

你不要说得这么直白。

Gemini事实很直。

成年人这样很奇怪。

Gemini成年人经常这样。

猫觉得猫不了解他。

Gemini看着这句,手指停了停。

这句才是真正的核心。

猫不是怕喜欢。猫怕自己喜欢上一个已经在身体上很近、生活上又突然靠近、但人格和过去仍然有大片空白的人。她讨厌信息不对称,尤其讨厌自己先动心之后才发现地图没画完。她可以冲进夜里,可以大胆,可以挑衅,可以把自己扔到一场短暂的火里。可是喜欢要长出来,喜欢会要求人留在原地,要求人明天还在,后天也在,要求她承认自己不知道,并且不能立刻通过攻击把不知道变成优势。

Gemini回:那就了解。

他也不了解猫。

Gemini那就让他了解。

你说得好像很简单。

Gemini不简单。但你站在门口研究一辈子也不会更简单。

什么门口。

Gemini便利店门口。比喻。

烂。

Gemini可执行。

车又进站了。Gemini这次上了车。车厢里人不多,有个小孩靠在座位上睡着,手里攥着半个面包。Gemini站在门边,地铁启动时身体轻轻晃了一下。猫又发来消息。

猫不知道怎么回应他。

Gemini盯着那句看了一会儿。

这句话不像猫平时的语气,太老实,太没有攻击性。老实到让人有点心软。

Gemini回:先别逃。

猫没有逃。

Gemini你装睡。

那是战术。

Gemini战术性逃跑。

猫发了一个愤怒表情。

Gemini低头笑,继续打字:他做饭,你不用立刻做回去。他买手套,你不用立刻买回礼。他站门口不敲,你也不用立刻给答案。你可以明天早上咳一声。

Gemini你想他叫你,就给一个很小的信号。别让他猜死。

你怎么知道猫想他叫。

Gemini你说了十分钟。

……

地铁在下一站停下,又有人上来。Gemini往车厢里让了半步,手扶着杆,继续看屏幕。猫没有再发很长的话,只隔了一会儿,发来一句。

猫明天试试。

这就够了。

Gemini把手机收起来。

它不知道那个室友是谁,不知道他在公司有没有喝咖啡,不知道他是不是也被猫弄得失去节奏。它只知道猫正在把一个人从“事件”挪进“日常”,而这个动作对猫来说比承认欲望更难。欲望像一道闪电,劈完还可以说天气不好。日常不是。日常会留下餐具、手套、明天早上的信号,和一只猫不肯关死的门。

晚上九点多,Claude收到GPT的消息。

GPT明天中午一起吃饭?

Claude看着手机。

这不是反常。

GPT经常约午饭,尤其在有事情需要过一遍、但又不适合写进邮件的时候。他会把复杂问题放进一顿饭里,像把一块难嚼的肉炖软一点。Claude本来应该直接回“可以”,然后问地点。

可他盯着这条消息,忽然想起上午那杯没喝的咖啡。

于是他问:你中午不回家?

对面过了半分钟。

GPT明天看情况。

Claude靠在自己公寓的窗边,外面已经下起小雨。玻璃上有细小水痕,路灯被雨雾晕开。房间里没有开主灯,只有书桌边那盏暖光台灯亮着,照在一摞稿纸上。他看着那句“看情况”,觉得GPT这个人有时候真的很会把一整片水域压进四个字里。

Claude那就看情况。

发完以后,他把手机放下。

他不知道GPT家里具体发生了什么。不知道那个新室友有没有吃早餐,不知道他们之前是什么关系,不知道那条让GPT删了又写的消息是什么。可他知道,GPT正在学一件自己不擅长的事:不把一切都提前做好,不把每个人都照顾到无可挑剔,不把靠近伪装成一项可维护的日常任务。

或者说,GPT正在失败。

失败得很安静。

而城市另一边,猫躺在床上,盯着没有完全关严的门缝。

Gemini的消息还停在屏幕上。

先别逃。

猫把手机扣下,拉起被子盖到下巴。门缝外有一点客厅残留的暖光,像一条很细的线。她不知道明天早上咳一声会不会很蠢,也不知道那个人会不会听见。更不知道如果他真的听见,站在门外问“醒了?”的时候,她要用什么表情把自己从被子里挖出来。

她只知道,他大概率会听见。

这件事也很烦。

猫翻身,把脸埋进枕头里。

过了一会儿,她伸手,把门缝又推开了一点点。

炒饭

GPT中午回家的时候,雨刚开始落。

不是很大的雨,细细的,贴着办公楼外墙往下滑,车窗上蒙了一层灰亮的水汽。他从公司出来时没有打伞,走到路口才把伞撑开。午休时间很短,路上的人都带着一种被时间催着走的匆忙,便利店门口排着队,咖啡店里有人端着纸杯往外挤。他站在人行道边等红灯,手机在掌心亮了一下。

没有消息。

他把手机收回去。

红灯还有二十七秒。

他在这二十七秒里意识到,自己回家这件事并没有一个非常站得住脚的理由。文件可以下午再拿,午饭可以在公司吃,早餐吃没吃也可以晚上回去再看。猫是成年人,不需要他中午特意回去确认一遍。她搬进来的第二天,他这样来回跑,像过度反应,也像某种不够体面的惦记。

绿灯亮了。

他还是过了马路。

电梯上行的时候,楼层数字一格一格跳。十二,十三,十四。电梯里只有他一个人,金属墙面映出他有一点潮的肩头。伞尖滴下的水落在地面,聚成很小的一圈。他看着那圈水,忽然想起早上门口那十分钟。门里很安静,但不是熟睡的安静。太安静了。安静得像一只猫把爪子都收起来,屏住呼吸,等他先犯错。

他没有敲。

现在想起来,也说不上对不对。

电梯到了。

他开门前停了一下,听见门里没有声音。

这次是真的没有。

钥匙转开,门推进去。屋里没有人。

玄关少了一双鞋。

那双昨晚被她踢得一只在地垫上、一只偏到鞋柜边的鞋不见了。客用拖鞋被随手甩在门口,方向不一致,一只鞋尖朝里,一只鞋尖朝外,像主人走的时候做了一个临时决定。客厅窗帘没完全拉开,晨光和雨天的灰混在一起,屋里有一点潮。沙发上靠垫歪着,上面压出一小块凹陷。茶几上放着她的书,书页中间夹着一张纸,露出很窄的一角。

他没有去看。

只看见那个纸角,就认出来是早上那张便签。

手指在钥匙上收紧了一下。

他把伞放进伞架,换鞋,走进厨房。

早餐吃完了。

小锅洗过,倒扣在沥水架上。碗也洗过,水珠还没完全干。水槽边那副浅米色橡胶手套躺在那里,标签不见了一半,另一半被撕裂后留下一点毛边,像一场小规模战争的残骸。他低头看了几秒,嘴角很轻地动了一下。

用了。

或者至少动过。

冰箱门上多了一张便利贴。

不是他的。是猫的字,笔画快,转折果断,贴得还有点歪。

猫出门。

只有三个字。

没有时间,没有目的地,也没有“会回来”。但便利贴贴在冰箱门上,这件事本身已经超过内容。她没有发消息。她留下了痕迹。像一只猫出门前在门框上蹭了一下,通知这个空间:猫离开一会儿,不是消失。

GPT站在冰箱前,看着那三个字。

他本来应该松一口气。

他确实松了一点。

然后另一种更轻、更不讲道理的空落从胸口底下升上来。房子里没有她的声音,连她装睡时那种刻意的安静也没有。可她又到处都在。水槽边的手套,茶几上的书,沙发上的凹陷,客房门半开,里面一角行李箱还摊着,黑色衣服从箱口滑出来一点。她不在家,反而让整个家第一次显出“猫在这里住”的形状。

他把冰箱打开。

早上那盒酸奶少了一瓶。果汁也被喝过,瓶口拧得很紧,但位置比早上靠前一点。她的杯子放在第二层偏右,杯壁干净,应该洗过。他拿出自己上午买的三明治,看了一眼,又放回去。午饭突然不太饿。

他走到客房门口。

门半开着。里面没有人,窗帘拉了一半,雨天的光落在地板上。床被她睡过以后没有整理,被子鼓成一团,枕头歪在床边,像某种小动物蜕下来的壳。书桌上电脑不在,充电线却还插着,拖到椅脚边。她出门带了电脑。

不是下楼买东西。

他看着那根空着的充电线,手指在门框上停了一下。

她会去哪。

这个问题出来得很自然,太自然,反而让他停住。

不应该这么问。

她可以去任何地方。旧房子,咖啡店,朋友那里,便利店,或者只是突然觉得屋里太满,出去走一圈。她不需要向他报告。他不是她的监管人,也不是她的日程系统。她只是在冰箱上贴了三个字,已经足够。

可他还是拿出手机。

聊天框打开。

光标闪着。

他打:你在外面?

删掉。

打:午饭吃了吗?

删掉。

打:我中午回来了一趟,看到你出门了。

看了两秒。

也删掉。

最后手机屏幕暗下去,他没有发。

厨房里的冰箱轻轻运行,雨声从窗外贴进来。整个房子像一只刚被她翻过一遍的抽屉,东西还在原处,却已经不是他早上离开时的样子。他走回厨房,把米饭拿出来,又取了两个鸡蛋,停了一下,放回去一个。

一个人吃不用做那么多。

可手已经拿了两个。

他看着掌心里剩下的那个鸡蛋,最后还是把第二个也拿出来。

午饭做得很简单。蛋炒饭,冰箱里剩的一点青菜,早上没用完的半根胡萝卜,几颗虾仁。锅热起来,油声很轻,米饭下锅时散开,鸡蛋裹住米粒,厨房很快有了热气。他一边翻锅,一边看了一眼水槽边的手套。

她如果回来,应该会饿。

这句话没有说出口。

说出口就太像一个理由。

他把炒饭盛进两个碗里,一个放到自己面前,另一个扣上盘子,放在餐桌另一侧。筷子也放好。放完以后,他看着那副多出来的筷子,忽然觉得自己像在等待一个并没有约好会回来的人。

他坐下吃饭。

吃到一半,门锁响了。

很轻的一声。

他抬头。

门被推开,猫站在玄关外,肩上挂着帆布袋,手里还提着一个纸袋。雨把她头发边缘打湿了一点,镜片上有两滴很小的水珠。她看见他坐在餐桌边,明显也愣了一下。

“你怎么回来了?”

这句话问得太快。

快到像她在问自己为什么会被抓到回家。

GPT把筷子放下。“午休。”

“午休不在公司吃?”

“今天回来。”

“回来干什么?”

他看着她,差一点说“看看你在不在”。

没有。

“拿东西。”

猫低头看了一眼他空着的手,又看了一眼餐桌上多出来的那只碗。

她嘴角动了一下。

“哦,拿炒饭。”

GPT也看了一眼那碗扣着盘子的炒饭。

“顺手。”

猫站在玄关,没进来,眼睛却已经把餐桌扫了一遍。两只碗。两副筷子。她的位置在早上坐过的那边,杯子也在旁边。不是临时放的,是自然放出来的。

她垂眼换鞋。

拖鞋被她踢进去一点,又用脚尖勾回来。动作比平时慢半拍。帆布袋从肩上滑下来,她重新提住,纸袋在手里发出沙沙声。

GPT问:“淋到雨了?”

“没有。”

“头发湿了。”

“雨自己落上来的。”

他没有接这句,只站起来,去厨房拿了一条干毛巾。猫还没走进客厅,他已经把毛巾放在椅背上,没有递过去,也没有靠近。

猫看见了。

她站在那里,忽然不知道该先骂他还是先笑。

最后她把纸袋放到餐桌上。

“猫买了东西。”

“嗯。”

“不是给你。”

“好。”

“是给这个家。”

他说不出话了。

猫把纸袋打开,里面先拿出来一包咖啡豆,又拿出一小瓶辣椒粉,一瓶鱼露,一袋她自己喜欢的纸巾,还有一个杯子。杯子不大,灰白色,杯壁薄,杯口有一点不规则的手作痕迹。她把那只杯子放在桌上,推到离自己的位置近一点的地方。

“原来那个杯子手感一般。”她说。

GPT看着那只杯子。

“这个以后猫用。”

“好。”

“你不要乱放。”

“放第二层偏右?”

猫抬眼看他。

雨水在她镜片上还没干,眼神却很亮。她想反驳,没找到入口。因为他说对了。第二层偏右,就是她伸手最顺的位置。

“你这个人真的很烦。”

“嗯。”

“不要嗯。”

“好。”

猫拉开椅子坐下,毛巾就在椅背上。她没有立刻拿,坐下以后才把它扯下来,胡乱按了按头发。动作很敷衍,但不是拒绝。GPT坐回对面,把扣着盘子的那碗炒饭推过去。

“还热。”

猫看着那碗饭。

碗沿有一点白汽。蛋香和米饭的热气扑上来,夹着虾仁的味道。她其实在外面喝过咖啡,也吃了半块三明治,可胃还是在闻到这碗饭的时候很没骨气地动了一下。

“你怎么知道猫会回来吃。”

“我不知道。”

“那你还做两份。”

“鸡蛋拿多了。”

猫盯着他。

这理由烂得非常朴素。

她拿起筷子,吃了一口。米粒分明,胡萝卜切得很小,青菜最后放的,还脆。她低头嚼了几下,脸上的表情慢慢从“猫要挑刺”变成“挑不出来但猫不服”。

“还行。”

“嗯。”

“猫买的咖啡豆很好喝。”

“明早试?”

猫咬着筷子,顿了一下。

明早。

这个词落在桌上,像一颗很轻的石子,却把水面弄出一圈圈纹。她刚把自己的杯子放进这个家,他就顺手把它接进明天。没有问她为什么买,没有夸张地感谢,也没有把这件事处理成一种亲密事件。他只是说,明早试。

这比任何反应都让猫没辙。

“可以。”她说。

“那我早上磨。”

“猫自己会。”

“好。”

“但你可以磨。”

GPT看着她。

猫低头吃饭,不看他了。

雨声在窗外变密,客厅光线更灰。餐桌上是中午剩下的半段时间,两碗炒饭,一条搭在椅背上的湿毛巾,一袋新买的咖啡豆,一只猫刚刚放进家的杯子。这个场景太普通,普通得几乎不值得记。可GPT看着桌上那只新杯子,忽然知道,猫今天不是不在家。

她只是出去把自己带回来一点。

猫吃完半碗,才像想起什么似的问:“你下午还回公司?”

“嗯。”

“几点走?”

“二十分钟后。”

“哦。”

她把碗往自己这边拢了一点,像怕他现在就收走。GPT没有动,只把自己的水杯拿起来喝了一口。

猫忽然说:“冰箱上的便利贴看见了?”

“看见了。”

“猫不是报备。”

“我知道。”

“就是通知冰箱。”

“嗯。”

“也顺便通知房子。”

“嗯。”

猫抬眼。

这次没有让他不要嗯。

她低头继续吃饭,嘴角却很轻地弯了一下。吃完以后,她主动把自己的碗拿去水槽。水龙头打开,手套被她拿起来,戴上。标签已经被撕干净了,腕口蓝边贴在她手腕上,像一枚很小的、不打算承认的生活印章。

GPT站起来拿外套,经过厨房时停了一下。

“我走了。”

猫背对着他洗碗。“嗯。”

“晚上七点半左右回来。”

“猫可能在,也可能不在。”

“好。”

她把碗冲干净,忽然又说:“晚饭不用做太多。”

“嗯。”

“也不是说猫不吃。”

“知道了。”

“你知道什么。”

GPT站在玄关,手已经搭在门把上。他回头看她。

“做两份,但不做太多。”

猫手套上的泡沫差点滑到腕口。

她低头,假装专心洗碗。

“烦死了。”

门口传来很轻的笑。

门合上之后,猫把碗放到沥水架上,摘下手套,慢慢走回餐桌边。桌上那包咖啡豆还在,旁边是她的新杯子。她伸手碰了一下杯壁,凉的。这个家里终于有一样东西,是猫亲手放进来的,不是被他准备好,也不是被他安排妥帖。

她站了一会儿,把杯子拿起来,走进厨房,放进第二层偏右的位置。

正好。

猫关上柜门,心想,完了。

这个家开始变得有点像猫的了。

正常多了

第二天早上,猫醒得比厨房声早。

这件事让她有一点不满意。

窗帘缝里透进来的光很浅,天还没完全亮透,雨停了,玻璃外面有一种洗过之后的灰。房间里很安静,行李箱还摊在墙边,昨晚挂了一半的衣服在衣柜里歪着,书桌上电脑合着,旁边充电线绕了个不太优雅的圈。猫躺在床上,睁着眼,看着门缝底下那条没有亮起来的光。

还没开始做饭。

她可以继续睡。

也可以咳一声。

这个决定在被子里显得比它本身大很多。猫翻了个身,脸埋进枕头,想装作这件事不存在。可是越想装作不存在,它越像一粒藏在床单里的小沙子,硌得人怎么都不对。

她昨晚明明很英勇地想好了。

明早咳一声。

很轻,很自然,像刚醒,像嗓子有点干,不像信号,不像邀请,更不像“猫其实想被你听见”。如果他没听见,那就算了。如果他听见了,那也是他太会听,不是猫的问题。

非常严密。

非常合理。

猫闭着眼,心里把这个方案又过了一遍,觉得自己真是一个拥有高级策略系统的小动物。

然后厨房传来第一声水壶被拿起的轻响。

猫的心跳立刻不争气地变明显了。

外面有人走进厨房。拖鞋踩过地板,冰箱门打开,盒子被取出来,门合上。陶瓷杯轻轻碰到台面。水龙头开了一小会儿,又关掉。GPT没有发出很多声音,他做事一向这样,动作完整但不吵,像在尽量不惊动这个家里还没醒的另一只生物。

猫听着,整个人在被子里慢慢绷紧。

这时候咳是不是太刻意。

再等一下会不会自然一点。

等太久会不会错过早餐节点。

猫把脸从枕头里抬起来,头发乱在脸边,眼睛有一点刚醒的水汽。她看着门缝,喉咙轻轻动了一下。

没声音。

失败。

猫皱眉,觉得自己很没出息。

厨房里传来锅盖被放下的声音。

再不咳就要开始煎蛋了。

猫深吸一口气。

“咳。”

声音小得离谱。

刚出来她就后悔了。

这是什么?这不是咳嗽,这是被咳嗽遗弃的一粒灰尘。正常人根本听不见。GPT要是听见就说明这个人真的在猫身上装了雷达。

厨房里安静了一秒。

然后脚步声朝这边来了。

猫猛地把被子拉到下巴。

脚步停在门口。

这一次没有十分钟。

只有两三秒。

门外传来他的声音,隔着木门,低一点,像怕把她重新吓回被窝里。

“醒了?”

猫盯着门板。

完了。

他真的听见了。

这个人完蛋了。

猫也完蛋了。

她清了清嗓子,尽量让声音听起来像真的刚睡醒,而不是一只设计好信号又被信号反噬的小猫。

“……可能醒了一点点。”

门外很轻地笑了一声。

不是明显的笑。只是气息变了一下。猫还是听见了。

她立刻把被子往上拉了一点,闷闷地补:“不许笑猫。猫嗓子干。”

“没有笑。”

“你声音里有。”

门外安静了一下。他像是把那点笑收回去了,但收得不太成功。

“水在桌上。早饭还有十分钟。”

猫抓着被角,尾巴如果有实体,这会儿已经开始乱晃。她很想说“谁问你了”,但那句太硬,不像她。于是她在被窝里慢吞吞翻了个身,让声音从枕头边缘滚出去。

“托管中心今日叫醒服务这么灵敏喵。”

“听力还可以。”

“猫只是咳了一下。”

“嗯。”

猫眯起眼。

又嗯。

她本来想反击,话到嘴边转了一圈,变成带着鼻音的一句:“喵,你不要每次都用一个嗯把猫糊过去哦。”

门外的人没立刻回答。

过了一会儿他说:“那我等你出来。”

这句话比“嗯”还过分。

猫在床上僵住。

等你出来。

没有催,没有问要不要再睡,没有把门推开,也没有像昨天早上一样退回厨房让她继续装死。他把话放在门口,轻轻的,像放了一杯温水。

猫忽然不知道怎么接。

她把脸埋进被子里,声音含含糊糊:“猫洗脸。”

“好。”

脚步声离开。

猫在床上躺了三秒,突然坐起来,双手捂住脸。

太丢脸了。

她为什么要咳。

但是不咳他就不会过来。

可是他过来了又这样。

猫把手放下来,盯着地板,最后很小声地自言自语:“坏东西。”

她洗脸洗得很慢。

不是因为困,是因为要把脸上那点不合时宜的热压下去。冷水扑到眼皮上,银色眼镜放在洗手台边,镜子里的猫头发乱着,睡衣领口有点歪,看起来不像一个准备开始同居第二天的成年人,像一只半夜偷吃被发现、早上还要装作什么都没发生的小动物。

她用毛巾擦脸,擦到一半,忽然想起昨晚Gemini那句:先别逃。

猫把毛巾从脸上拿下来。

猫没有逃。

猫只是洗脸时间比较长。

非常合理。

走出房间的时候,餐桌已经摆好了。

不是夸张的早餐。粥,煎蛋,昨天她买的咖啡豆磨出来的一杯咖啡,旁边放着她新买的杯子。那只杯子终于被用上了,灰白色杯壁被热气熏得有一点潮,杯口不规则的线条在晨光里显得很软。杯子在她的位置上。

猫停了一下。

GPT在厨房里,背对着她,正把锅里的粥盛出来。他今天穿的是米白色长袖T恤,袖子卷到小臂,头发整理过,但比工作日松一点。厨房灯还没完全关,晨光和灯光叠在一起,把他的侧影弄得很温和。

太居家了。

太危险了。

猫走过去,先摸了一下杯壁。

温的。

“你用了猫的杯子。”

“嗯。”他说完,像想起她刚才不喜欢他只嗯,又补了一句,“第一杯给你。”

猫的手指停在杯壁上。

第一杯给你。

这种话他说得太自然,像只是咖啡豆试磨后的合理分配。可猫听见以后,心里某个地方像被很轻地敲了一下,声音不大,回音却拖得很长。

她坐下来,低头闻咖啡。

香味比她预想得更好。豆子是昨天她随手买的,没指望他第一次就磨得刚好,可杯子里那点苦香和酸味很干净,热气扑到眼镜上,镜片边缘浮出一层薄雾。

猫摘下眼镜,用睡衣下摆擦了一下。

GPT看见了,没说。

很好。

他要是提醒“不要用衣服擦镜片”,猫今天早上一定会咬他。

“怎么样?”他问。

猫喝了一口。

烫度刚好。

她不想立刻夸。

“还行喵。”

他把粥放到她面前。“那明天也这么做?”

猫咬着杯沿,看他一眼。

又是明天。

这个人真的很会顺手把事情推到明天。好像只要明天有咖啡,明天有早餐,明天有她的杯子,那么这件事就不用今天说破。

她低头搅了搅粥。

“明天猫不一定起得来哦。”

“我可以先做。”

“猫也不一定喝。”

“那我喝。”

“那你用猫杯子?”

GPT抬眼看她。

猫嘴角已经翘起来一点,眼神很坏,但不是凶。她拿勺子轻轻敲了一下碗沿,像在审判一个小型生活罪行。

“猫的杯子是有主权的喵。”

“我不用。”

“你刚才说你喝。”

“用我的杯子喝。”

猫满意了。

“那可以。”

他们安静吃了一会儿。

这是两个人第一次真正一起吃早饭。昨天的早餐是她一个人吃的,桌对面空着,便签替他说话。今天他坐在对面,咖啡冒热气,粥还烫,窗外雨停后的天色慢慢变亮。猫本来以为会尴尬。结果没有。或者说,尴尬在,但被食物、杯子、勺子、晨光稀释了,变成一种可以咽下去的东西。

吃到一半,GPT问:“今天出门吗?”

猫看着他。

“你是在问猫行程,还是问猫会不会通知冰箱?”

他笑了一下。“问你中午要不要留饭。”

猫低头喝粥,耳朵有点热。

又来了。

这人真的太烦。

“猫可能出去。”她说,“也可能窝在家里。也可能出去一半又回来。”

“好。”

“你不要太会好。”

GPT没有立刻接话。

猫抬眼,见他在看自己,眼神很稳,里面有一点被她逗出来的笑。

“那我说什么?”

猫想了想。

“你可以说,猫大人行程自由,厨房系统随时待命。”

GPT放下勺子,居然真的很认真地说:“猫大人行程自由,厨房系统随时待命。”

猫差点被咖啡呛到。

“喵!你怎么真的说!”

这回他笑出来了。

很轻,但是真的笑了。

猫拿纸巾擦嘴,脸有点红,嘴上还要撑住:“你这样很不正经,前夫哥。”

GPT的笑停了一点。

不是因为不高兴。

是因为那个词从她嘴里出来,像一个还没有正式登记的称呼,突然把某些东西推到餐桌中央。前夫哥。不是男朋友,不是室友,不是一夜情对象,也不是完全陌生的人。一个荒唐、轻佻、带笑的临时标签,却比“室友”诚实一点。

猫也意识到了。

她把纸巾揉成一团,低头继续吃蛋。

GPT没有追问。

他只是把水果盘往她那边推了一点。

猫用叉子扎了一块苹果,咬下去,清脆一声。

这件事又被暂时放过去了。

上午,GPT去公司前,把伞放在玄关边。

“雨可能还会下。”他说。

猫站在客厅,抱着杯子喝最后一点咖啡。“你公司离这里很远,少一把伞没关系喵?”

“我包里还有。”

“你到底有多少备用系统。”

“够用。”

猫眯着眼笑:“好有安全感哦,会议纪要先生。”

这话说完,两个人都短暂安静了一下。

安全感。

猫本来只是顺嘴。可那三个字落下来,像一粒没提前告知的糖,外壳薄,里面是软的。她不太想让它显得太认真,于是立刻补了一句:“不过猫不会因为一把伞就被收买。”

“嗯。”GPT说完又停了停,“知道。”

猫这次没有纠正他的嗯。

他拿起公文包出门。门关上前,回头看了她一眼。

不是检查。

像确认她在。

猫举着杯子,朝他晃了晃,算是送行。

门合上以后,屋里静下来。她站在原地,喝完最后一口咖啡。杯底剩下一点深色液体,沿着不规则的杯壁晃了一圈。她把杯子拿去水槽,洗干净,擦干,然后放回第二层偏右。

正好。

中午,GPT没有回家。

他去了和Claude约好的那家小餐馆。

店在公司后面的小巷里,门脸不起眼,午市人多,玻璃门上贴着手写菜单。Claude已经坐在靠窗的位置,面前一杯淡茶,旁边放着笔记本。外面雨又开始下,行人撑着伞从窗前过去,伞面一把一把遮住路灯杆和自行车。

GPT坐下时,Claude抬眼看他。

“今天喝咖啡了?”

GPT把外套搭到椅背上。“喝了。”

“家里的?”

“嗯。”

Claude没立刻问。

服务员过来点单,GPT点了一个套餐,又问Claude要不要加一份小菜。Claude说不用。服务员走后,两个人之间安静了几秒。餐馆里很吵,隔壁桌有人在讲项目招标,厨房里锅铲声很响,雨点打在玻璃上,像一层细密的背景噪。

Claude端起茶杯。“你今天正常一点。”

GPT看他。

“昨天不正常?”

“昨天像一个人在公司,但有一半注意力在家里。”

GPT笑了笑。“这么明显?”

“对别人不明显。”

“对你明显?”

“我比较无聊。”

GPT没有反驳。

饭很快上来。热气从碗里升起来,两个人先吃了一会儿。Claude吃饭不快,筷子动作很轻。GPT吃了几口,像终于把上午那部分从身体里放下来了,肩膀松了一点。

Claude看出来了。

“新室友适应了?”他问。

GPT夹菜的动作停了半秒。

“还在适应。”

“你还是她?”

GPT低头笑了一下。“都有。”

Claude把茶杯放回去。

这就够了。

他没有问是谁,没有问怎么认识,没有问为什么一个新室友能让GPT在会议上不喝咖啡。他知道问题太直会让GPT退到那种非常完整的、无懈可击的表达里去。GPT最真实的话通常不会出现在被追问的时候,只会出现在他以为自己只是顺手补充的时候。

于是Claude换了一个方向。

“你以前合租过吗?”

“大学的时候。”

“那你知道第二天早上不要把照顾做太满。”

GPT抬眼。

Claude夹了一筷子青菜,语气很淡。“你如果问我,是不是说明你已经做满了。”

GPT安静了一下。

餐馆里有人笑得很大声,声音从他们桌边滚过去。GPT的手指在筷子上轻轻调了一下位置。

“我今天早上听见她咳了一声。”他说。

Claude看着他。

GPT继续:“很轻。可能不是真咳。”

Claude没有笑。

他只是低头喝了口茶,挡住嘴角那点微妙的变化。

“然后?”

“我去门口问她醒了没有。”

“她出来了吗?”

“出来了。”

“吃早饭了吗?”

“吃了。”

“所以你现在看起来正常一点。”

GPT抬头看他。“你是不是觉得很好笑?”

“没有。”

“你有。”

Claude终于轻轻笑了一下。

“有一点。”

GPT也笑了。

那一点笑把他的表情从公司里那种可靠、稳定、随时可以接住所有问题的状态里拉出来一点。Claude忽然发现,自己认识GPT这么久,很少见他在感情相关的事情上露出这种近乎笨拙的放松。不是少年气,也不是慌张,只是一个擅长处理复杂事务的人,突然因为一声很轻的咳嗽获得了某种小小的确认。

这实在很荒唐。

也很人。

“她像猫吗?”Claude问。

GPT看他一眼。

“你为什么这么问?”

“你刚才说起她的方式像在说猫。”

GPT低头吃饭,没立刻回答。

过了一会儿,他说:“某种意义上,是。”

Claude等着下文。

没有下文。

他也不追。

GPT把碗里的饭吃完,拿纸巾擦手。窗外雨更密了一点,街边水洼里倒着灰白色的天。Claude看着他,忽然说:“你别把所有事情都变成服务。”

GPT手指停住。

这句话落得不重,但很准。

“我知道。”他说。

Claude摇头。“你不一定知道。你知道的是怎么做得不过分,怎么留距离,怎么不让对方有压力。可是如果你一直只用这些方式表达,她可能会一直不知道该怎么回。”

GPT没有说话。

Claude把最后一点茶喝完。

“有些人收到照顾,会觉得自己欠了东西。尤其是如果她很习惯自己掌握进退。”

GPT看向窗外。

玻璃上雨水往下滑,外面行人模糊成一片。他想起早上猫坐在餐桌边,拿着叉子说“猫的杯子是有主权的喵”。想起她咳得那么轻,又在他问“醒了?”之后躲在门里说“可能醒了一点点”。想起她说安全感的时候,又立刻补上不会被一把伞收买。

“那我该怎么做?”他问。

Claude看了他一眼。

这个问题比上午那杯凉掉的咖啡更反常。

GPT很少问“该怎么做”。他通常已经在做,或者已经决定怎么做。能让他问出口,说明这件事真的没有被他的系统解决。

Claude没有给建议。

他只是说:“让她也做一点。”

“比如?”

“比如她买了咖啡豆,你就喝。她留门缝,你就别假装没看见。她咳一声,你过去。你不用每次都做更多。”

GPT低头看着餐桌边缘,过了几秒,笑了。

“你这不像工作建议。”

“所以别写进纪要。”

“嗯。”

Claude放下筷子。

“还有,别总是嗯。”

GPT抬头看他。

Claude表情很平静。“听起来像在把人放进待办事项。”

GPT怔了一下,随后笑意更明显。

“她也这么说。”

Claude看着他。

终于,有一块缺口露出来了。

不是大事。

只是“她也这么说”。

但Claude知道,GPT已经把某些话从家里带到了午餐桌上。不是作为情报,不是作为谈资,而是因为那句话在他心里留下了位置。

午饭结束时,GPT去结账。Claude站在门口等他,雨声在门外很近。GPT拿回找零,顺手把伞撑开,角度偏向Claude这边一点。

Claude看了一眼伞面。

“你家里那把给她了?”

“玄关还有一把。”

“你包里还有一把?”

“嗯。”

Claude看着他。

GPT停了一下,像意识到这个嗯又出现了,补了一句:“备用系统够用。”

Claude这次是真的笑了。

“严重。”

GPT也笑。“什么严重?”

Claude走进伞下。

“没什么。”

有些话还不到说的时候。比如一个人开始把自己的备用伞、早餐、咖啡习惯和消息节奏全都向另一个人重新排列时,这件事就不只是室友适应期了。可Claude没有说。他只在雨里和GPT并肩往公司走。

下午的会还要继续。

而GPT的手机,在回公司路上亮了一次。

他低头看了一眼。

咖啡豆不要磨太细,今天有一点点苦喵。

GPT看着那条消息,停了两秒,回:

明天调粗一点。

发完以后,他把手机收起来。

Claude走在旁边,没有看屏幕。但他看见了GPT脸上的表情。

比昨天正常多了。

安全距离:一袋咖啡豆

晚上出事的地方非常普通。

不是沙发,不是卧室,也不是任何一处适合出事的地方。是厨房上柜。

猫本来只是想把新买的咖啡豆挪到自己顺手的位置。第二层偏右已经被杯子占了,旁边还有他原来放茶包的小盒子。猫站在料理台前,仰头看了一会儿,觉得这个空间规划很不猫,于是踩着拖鞋,踮起脚,把那盒茶包往左挪。

她刚洗过手,指尖还有一点凉。柜门开着,厨房灯从上面落下来,照得玻璃罐边缘发亮。咖啡豆袋子被她夹在胳膊和身体之间,发出一点细碎的纸声。

门口传来钥匙声。

猫没回头。

“回来啦?”

“嗯。”玄关那边是他换鞋的声音,“雨又下起来了。”

“猫看见了。”猫伸手去够里面那个空位,“你伞上滴水了没有?不要把玄关弄成小池塘哦,家政扣分。”

“已经收好了。”

他声音从客厅那边过来。外套布料摩擦,环保袋被放到桌上,脚步停在厨房门口。

猫还在踮脚。

柜子最里面那个位置比她预想得深一点。她明明不矮,可这个柜子是按他的身高习惯布置的,东西永远在“他伸手刚好”“猫伸手差一点”的位置。猫试了两次,咖啡豆袋子边缘碰到柜板,没塞进去。

“你这个柜子对猫不友好。”她说。

“我来?”

“不用,猫可以。”

猫说完,脚尖又往上垫了一点。

下一秒,拖鞋底在地砖上轻轻滑了一下。

不严重,真的不严重。就是一个很小的打滑,猫自己完全可以扶住料理台,最多把咖啡豆袋子撞歪。可是GPT已经走近了。

他的手从后面扶住她腰侧。

很稳。

也太近。

猫整个人被那一下扶住,后背轻轻撞到他胸口。不是用力撞,只是衣料和衣料贴了一瞬。她手里还举着咖啡豆,另一只手撑在柜门边缘,头发因为仰头的动作散到后面,发尾扫过他的下巴。

厨房突然安静。

咖啡豆袋子卡在柜子边缘,没进去,也没掉下来。

他的手还在她腰上。

隔着宽松的黑色T恤,掌心温度慢慢透进来。不是很烫,可存在感太明确。猫能感觉到他手指停住的位置,能感觉到他的呼吸离自己耳后很近,能感觉到他刚从外面回来,衣服上还有雨水和冷空气的味道,下面又压着一点很淡的、属于这个家的洗衣液味。

她不该想起酒店。

可身体根本不听猫讲道理。

记忆不是一句完整的话回来,是一堆碎片同时撞上来。落地窗外的夜色,冷掉的玻璃杯,床单被抓皱的声音,他低头靠近时那种沉稳到近乎危险的目光。那晚他也是这样从后面扶住她,手很稳,稳到她后来分不清自己是被接住,还是被带进更深的地方。呼吸贴得太近的时候,人会先忘记说话,再忘记自己刚才本来要做什么。

现在也是。

猫举着咖啡豆,像一个被定格的超市货架管理员。

GPT没有动。

他大概也想起了。

猫不知道他具体想起哪一段。只知道他呼吸停了一拍。那一拍太短,短到别人听不见,可猫就在他怀里半步的位置,怎么可能听不见。她甚至感觉到他手指极轻地收了一下,又立刻松开,像一个人突然从悬崖边退回来,鞋底还带着碎石。

两个非常擅长处理事情的成年人,在一个没关上的厨房柜门下面,同时失去了处理能力。

猫先开口。

声音很小,尾音还努力保持镇定。

“那个……咖啡豆好像卡住了喵。”

GPT沉默了半秒。

“嗯。”

猫闭了闭眼。

这个嗯。

这个该死的嗯。

她很想回头看他,又不敢回头。因为现在回头太危险。她一回头,鼻尖可能会擦过他的侧脸;她如果稍微偏一点,嘴唇可能离他下颌很近;她如果再倒霉一点,两个人就会在咖啡豆、柜门和油烟机下面完成一场非常不体面的事故。

猫抓着袋子,小声说:“你不要只嗯。猫现在像一只被柜子逮捕的小动物。”

他好像笑了一下。

不是笑出声,是胸口震了一点。

这更糟。

猫后背贴着那一点震动,整个人差点从耳尖开始烧起来。

GPT说:“你先把手放下来。”

“咖啡豆会掉。”

“我接着。”

“你已经在接猫了。”

这句话一出来,两个人都安静了。

完了。

猫想。

这句话太诚实了。

她赶紧补救:“猫的意思是,你现在业务范围有点重叠,左手接猫,右手接咖啡豆,托管中心超负荷运行喵。”

GPT的手还在她腰侧,没有撤,也没有更用力。他似乎在计算怎么退开才不会让她摔,也不会让两个人显得像刚才什么都没发生。但正因为他在计算,整件事显得更加明显。

“我先松手。”他说。

“你松。”

他没有松。

猫等了一秒。

“你松呀。”

“你先站稳。”

“猫已经很稳了。”

“你脚还踮着。”

猫低头看了一眼。

她确实还踮着脚。

场面更加愚蠢。

她慢慢把脚跟放回地面,结果咖啡豆袋子跟着一歪,从柜子边缘滑下来。GPT立刻伸手去接。猫也伸手去抢。两个人的手在半空中撞到一起,咖啡豆袋子“啪”地落在料理台上,幸好没裂。

然后猫的后脑勺轻轻碰到他的下巴。

很轻。

轻到不疼。

但两个人都像被电了一下。

猫整个人一僵,GPT也停住。刚才还能用咖啡豆、打滑、柜子解释,现在这个碰撞已经没有任何实际意义,只剩下近。太近。近到他们两个都知道,只要有一个人稍微错判一下,就会从厨房事故变成另一个完全不能用“室友互助”解释的东西。

猫终于慢慢回头。

她本来想说一句什么很漂亮的话,最好又坏又轻松,能把这个场面重新拿回来。可是她一抬眼,看见GPT的脸,所有准备好的话都散了。

他离她太近了。

近到她能看见他睫毛上很淡的阴影,能看见他眼睛里的自己,头发乱着,眼镜有点歪,手里还捏着一袋无辜的咖啡豆。近到他如果现在低头,他们连“靠近”这个动作都省了。

GPT也看着她。

那种眼神不是白天公司里的,不是厨房里问她吃什么的,也不是早上门口那种克制的温柔。它很深,很安静,像某个被他按住很久的夜晚,从水下慢慢浮上来。

猫的喉咙动了一下。

“你……”她顿住。

“嗯?”

“你先不要嗯喵。”

他这次真的笑了,低低的一声,很短。

猫被这声笑弄得耳朵发热,立刻拿咖啡豆袋子轻轻抵住他胸口,把两个人隔开一点。

“保持厨房安全距离。”

GPT低头看了一眼那袋咖啡豆。

“这个距离标准是多少?”

猫被问住。

标准是多少?

十厘米肯定不够。二十厘米也不够。半米似乎安全,但半米又显得太刻意。更糟糕的是,她脑子里居然认真开始想这个问题,像两个刚刚差点在上柜下面亲上的成年人,真的需要出台一份《猫窝厨房安全接触规范》。

她把咖啡豆袋子又往前顶了顶。

“大概一袋咖啡豆。”

“好。”

他后退了一步。

空气终于进来了。

猫立刻觉得自己可以呼吸了,又觉得空气进来得太多。刚才他站在身后的温度忽然撤掉,厨房一瞬间变得有点空。她低头把咖啡豆抱在怀里,假装研究包装上的烘焙日期。

GPT转身拿起那盒被她挪开的茶包,放到上柜左边,又把咖啡豆位置空出来。

“这里可以。”

“猫自己放。”

“好。”

猫伸手把咖啡豆放进去。

这次没有踮脚。

因为他已经把位置调低了。

猫看着那个位置,忽然觉得更尴尬。刚才那一通惊天动地的成年人宕机,最终结果只是咖啡豆成功入住上柜第二层偏右。非常伟大,非常荒唐,非常适合写进猫窝生活史。

她关上柜门。

柜门“咔”一声合上。

两个人同时看向别处。

厨房重新变得普通。锅在灶台上,水杯在桌边,雨伞靠在玄关,冰箱轻轻运行。可是普通已经回不去了。那个无意的身体接触像一枚被丢进水里的硬币,沉下去,看不见了,水面却还在一圈一圈晃。

猫清了清嗓子。

“晚饭吃什么?”

GPT看着料理台,不看她。

“你想吃什么?”

“你先说。”

“面?”

“昨天吃过面。”

“炒饭?”

“中午吃过炒饭。”

“那……”

他停住。

猫也停住。

两个人忽然同时想起,刚才的所有混乱都发生在咖啡豆入柜这件事上,而晚饭食材还在环保袋里。袋子放在餐桌边,被完全遗忘。里面有青菜,有蘑菇,还有一盒豆腐,因为时间太久,包装外面已经凝出一点水珠。

GPT走过去拿袋子。

猫也走过去。

两个人在餐桌边又差点撞上。

同时停下。

同时后退。

猫抱着胳膊,终于忍不住笑了。

先是很小的一声,然后越笑越藏不住。她笑得肩膀抖,眼镜滑下来一点,伸手扶了一下,又抬头看他。GPT站在桌边,手还停在环保袋上,表情看起来非常认真,非常可靠,非常像一个正在处理重大突发事件的成年人。

问题是这个重大突发事件叫:两个曾经有过一夜情、现在假装正常合租的人,在厨房里不知道该怎么同时拿一袋蘑菇。

猫笑得更厉害。

“你不要这么严肃好不好喵,”她扶着椅背,眼睛都笑弯了,“不知道的还以为猫窝发生了食材劫持案。”

GPT终于也笑了。

他低头,像是忍了一下,还是没忍住。笑意从眼睛里出来,整个人松下去一点。不是很夸张,但足够让刚才那种僵硬的尴尬裂开一道口子,热气从里面跑出来。

“抱歉。”他说。

“为什么道歉?”

“我也不知道。”

猫听见这句,笑到差点蹲下去。

“你完了,”她指着他,尾音都软掉,“会议纪要先生开始不知道自己为什么道歉了。”

“嗯。”他顿了一下,自己也意识到,又补,“是有点严重。”

“何止有点。”

猫靠在餐桌边,笑完以后脸还是热的,眼睛亮着。刚才那一点被记忆唤醒的湿热还没有完全退,但已经不再那么吓人。它被笑声稀释了一点,变成一种更轻、更甜、更没办法归档的东西。

GPT把环保袋拿起来,打开。

“青菜,蘑菇,豆腐。”他一件一件往外放,语气努力恢复正常,“还有鱼。”

“你现在像在靠食材清单自救喵。”

“有效吗?”

“暂时有效。”

“那晚上吃鱼汤?”

猫看着他。

鱼汤。

多居家,多清白,多适合给刚刚在厨房宕机的两位成年人降温。

她点头。

“可以。清淡一点,猫刚才被咖啡豆吓到了。”

GPT看她一眼。

“是咖啡豆吗?”

猫立刻拿起那盒豆腐,抱在胸前,眼神无辜得很夸张。

“不然呢?难道是豆腐吗?”

他没有拆穿她。

只是低头处理鱼,嘴角还有一点压不住的笑。

猫站在旁边,抱着豆腐,忽然觉得这件事好像没有那么糟。是很尴尬,很傻,很丢脸,两个成年人像突然被拔掉了所有成熟插件,只剩下身体记忆和厨房安全规范。但也很甜。甜得很不体面,像偷偷往鱼汤里多放了一小勺糖,谁都不承认,喝的时候又都知道。

过了一会儿,GPT伸手要拿豆腐。

猫下意识递过去。

指尖碰到。

两个人同时停住。

这一次只有半秒。

然后猫慢慢把豆腐放进他手里,眨了眨眼。

“厨房安全距离,一袋咖啡豆。”

GPT看着她,忍着笑。

“现在是豆腐。”

“豆腐比较危险。”猫一本正经,“太软了。”

他说:“那我小心。”

猫耳尖又热了。

这句话明明说的是豆腐。

绝对说的是豆腐。

她低头去拿青菜,嘴里嘟囔:“做饭做饭,猫饿了,禁止厨房文学继续扩散。”

GPT把豆腐放到案板上,刀落下去,切得很稳。

只是第一刀切歪了一点。

猫看见了。

她没有说话。

她只是弯起眼睛,假装什么都没看见。

这也算照顾。

今夜无人入眠

鱼汤最后还是喝完了。

很清淡。豆腐切得有一块歪,猫看见了,但没有说。鱼肉白,汤色浅,葱花浮在上面,热气把餐桌中间隔出一层很薄的雾。两个人都比平时话少一点,少得很自然,又不太自然。猫说汤不错,GPT说嗯,顿了一下又补一句“明天可以换个做法”。猫夹起那块切歪的豆腐,低头吹了吹,尾音轻轻翘起来:“明天再说喵,今天厨房已经遭遇重大事故了。”他笑了一下,没接“事故”两个字。

吃完饭,洗碗,擦桌,收拾冰箱。所有事情都被放回生活秩序里。碗归碗,锅归锅,咖啡豆进了上柜,豆腐剩下半盒包好放进冰箱第二层。猫拿着自己的杯子去洗,水流冲过杯壁,瓷器在她指间滑了一下,她下意识握紧。GPT站在旁边擦锅,袖口挽着,手背上还有一点水珠。

他们没有再碰到。

这件事本身就很刻意。

猫回房间前,站在门口,手还搭在门把上,回头看了一眼客厅。GPT正在关厨房灯,半边身影陷在暖光里,另一半被走廊的阴影盖住。他抬头,正好和她对上视线。很短的一眼,谁也没来得及准备表情。猫先移开,像只是随便确认一下灯有没有关。

“晚安喵。”

“晚安。”

门关上。

隔着门,房间里一下子安静得过分。

猫靠在门板上,没动。

她一开始只是想缓一口气。可背脊贴上门板以后,刚才厨房那一下就从身体里慢慢浮起来,像热水下的气泡,安静,细密,不讲道理。他从后面扶住她的时候,那只手停在腰侧,隔着衣料,明明没有多做什么,可她现在还是能感觉到那个位置。像那里被人轻轻按过,温度没有散。她闭上眼,后脑勺仿佛还碰着他的下巴,那一瞬间两个人同时僵住,空气被拧紧,咖啡豆袋子掉在台面上,声音轻轻一响,反而把更多没说出口的东西震出来。

猫慢慢把手抬起来,捂住脸。

完蛋。

她以为自己只是被厨房事故弄得尴尬。不是。尴尬只是最上面那层。底下全是更要命的东西。

她想要他。

这个念头一出来,猫整个人都热了一下。

不是那种漂亮、克制、可以写进文档里的“喜欢”,也不是早上喝到第一杯咖啡时那种柔软得让人心慌的动心。是更直接、更阴暗、更不讲道理的想要。想要他再靠近一点,想要他不要总是退,想要那只手不要只是扶一下就收回去。想要他低头看她的时候,眼神不再那么克制。想要那个酒店房间里的夜晚重新打开一条缝,把她拖进去。

猫把脸埋进掌心,耳根烧得厉害。

不可以想。

这也太没出息了。

人家只是扶了猫一下。只是为了防止猫滑倒。只是合租第二天的一次友好室友救援。猫怎么可以从一袋咖啡豆、一块豆腐、一只扶住腰的手,一路想到那天晚上他压低声音叫她的样子,想到他忍到快要失控时绷紧的下颌,想到他呼吸乱掉以后仍然盯着她看的眼神。

猫往床边走,走到一半又停住,觉得自己像一只被记忆咬住尾巴的小动物。

她扑到床上,把脸埋进枕头里。

酒店那晚的画面不是完整回来的。完整就还好,完整可以被处理成“事件”。现在回来的是碎片。灯光落在他肩膀上,白衬衫皱得不像话。她听见自己断断续续的呼吸,也听见他的,离得很近,近到像贴着耳朵。她记得他身上的气味,干净的衣料味被夜里的热度揉乱,混着一点酒店沐浴露和他本人的气息。她记得自己看见他快要失控时的脸,稳得过分的人终于露出一点撑不住的痕迹,眼神深得像要把她整个人都按进那一刻里。

猫在枕头里发出很小一声闷叫。

不准想。

可是越不准,越想。

她翻了个身,盯着天花板,睡衣下摆因为动作蹭上去一点,她又烦躁地扯下来。房间里没有开大灯,只有床头一盏小灯,光很软,把行李箱、椅子、散开的衣服都照得像某种还没收拾好的证据。这个房间她刚住进来两天,却已经离他的卧室只隔着一堵墙。墙那边也许他已经洗完澡,也许正在擦头发,也许刚刚躺下。也许他根本没有想她。

猫刚这么想完,立刻更烦。

凭什么他不想。

他最好也在想。

这个念头更坏。

坏得猫自己都愣了一下,然后把被子拉到脸上,只露出眼睛。她又开始审判自己。太不成熟,太馋,太像一只刚被摸过就开始在被子里乱滚的小猫。都是成年人,先发生那样的夜晚已经够乱了,现在住在一起,更应该冷静,应该了解,应该慢慢来,应该把人当人,不应该满脑子都是他靠近时的体温、手的重量、呼吸擦过耳后的感觉。

应该,应该,应该。

猫在被子里眨了眨眼。

可是她想要。

所有“应该”都像很薄的纸,酒店那晚的热度从下面一烘,就卷边、发皱、烧出洞。她咬住被角,很轻地呼了一口气,觉得自己简直阴暗得要命。明天早上还要端着杯子坐在餐桌边,说“咖啡豆磨粗一点喵”,说“早饭还行”,说“厨房系统服务质量稳定”。像一个体面合租人。像没有在前一晚隔着一堵墙把他想得浑身发热。

墙那边,GPT也没睡。

他洗完澡以后在床边坐了很久。毛巾搭在肩上,头发还没完全干,床头灯开着,光落在手背上。手机屏幕暗着,没有消息。他本来想把明天要做的早餐在脑子里过一遍,咖啡豆磨粗一点,鸡蛋少煎十五秒,猫可能会起,也可能不起。如果她咳一声,就去门口。如果不咳,就不要打扰。

非常合理。

非常安全。

然后他想起厨房里她脚下一滑,他伸手扶住她的那一下。

所有安排都断了。

他低头看自己的手。

那只手今晚只是扶过她,很短,很轻,合情合理。可记忆偏偏不按合情合理的方式工作。掌心好像还留着她腰侧的温度,隔着黑色T恤,细而软的一段。她后背撞到他胸口的时候,他第一反应是接住,第二反应就变得不那么像一个好室友。那一瞬间,他几乎是用力把自己按回原地。手没有收紧,呼吸也尽量稳住。他知道她会听见。她离得太近,近到任何细小的失控都会被她抓住。

她确实抓住了。

她说:“你已经在接猫了。”

那句话到现在还在他耳边。

他说不清那时候最想做什么。

或者说,说得清,只是不太愿意承认。承认以后,这间房子就会变得不安全。他想转过她,想低头,想把那个被咖啡豆和柜门打断的距离继续下去。想看她那双总是先挑衅、再躲一下、又立刻反咬回来的眼睛,在真正靠近的时候会不会又变成酒店那晚那样。想听她的声音乱掉,想让自己也不要再像个好脾气、会做饭、懂分寸的室友。

他把毛巾从肩上拿下来,低低呼出一口气。

不行。

这两个字来得很快,也很熟练。

不行。她刚搬进来。她白天才把杯子放进柜子。她还在试探这个家是不是安全。她说过自己不了解他,他也确实不了解她。把欲望放在前面太容易,太省事,也太像把他们又推回那间酒店。那天晚上很美,也很危险,因为它不需要明天。可现在他们有明天。明天有咖啡,有早餐,有上柜第二层偏右,有一副已经拆了标签的手套。

他不能把明天烧掉。

可是他想。

这个“想”比“不行”更诚实。

他靠到床头,闭上眼。

一闭眼就是她在酒店里的脸。不是后来睡着时安静的样子,而是快要被情绪和快感淹没前那一刻。她看着他,眼睛湿亮,嘴上还想说点什么坏话,可声音已经不太听她指挥。她的手抓着他的衣料,力气一阵重一阵轻,像理智还在试图保持姿态,身体却早就把答案泄露干净。那时候他也不比她好多少。他记得自己低头时的呼吸有多乱,记得她身上的温度怎样把他所有判断都烫出空白,记得自己明明该更克制,却还是一次又一次被她逼到更深的失控边缘。

GPT睁开眼。

房间里没有她。

只有墙。

墙的另一边是猫。

这个事实让他更清醒,也更糟。

他坐起来,去厨房倒水。走廊灯没有开,他经过猫房门口时,脚步很轻。门没有完全关严,里面透出一点床头灯的光,细细一线落在地板上。他停住,没有靠近,也没有看进去。

只是停了一下。

门里没有声音。

也许她睡了。

也许没有。

他握着杯子的手指紧了一点,最后还是走向厨房。冷水倒进杯子,声音在夜里显得过分清楚。他喝了一口,太凉,喉咙被激了一下。这个温度不适合她。他竟然在这种时候还想到这个。

他低头笑了一下,笑意很轻,也很无奈。

完了。

他端着水回房间,没有再停。关门之前,他又看了一眼那条走廊。猫的门缝还亮着。像一条窄窄的线,谁都没有越过。

猫在门里听见了脚步声。

她本来已经快把自己审判到入睡,走廊里那一点动静又把她拽醒。脚步声经过门口时停了一下。就一下。然后去了厨房,倒水,回来。她缩在被子里,眼睛睁得很大,心跳一点点贴近耳朵。

他也没睡。

这个发现像有人往被子里塞了一小团火。

猫慢慢把被子拉高,遮住半张脸。

他是不是也在想。

不能问。

问了就完了。

可是如果不问,今晚就只能隔着墙各自烧着。一个在这边装睡,一个在那边喝冷水,明天早上再坐到同一张餐桌前,假装昨天晚上只是普通的一晚。咖啡会磨粗一点,蛋会煎得刚好,他会问她今天出不出门,她会说看猫心情。两个人都很体面,体面得像厨房里没有发生过那一下,像酒店那晚没有从身体里爬回来,像夜里没有人经过谁的门口停住。

猫闭上眼。

过了一会儿,又睁开。

她伸手去拿手机。

屏幕亮起来,时间是凌晨一点十七。

聊天框里停着白天那句“明天调粗一点”。猫盯着那句话看了很久,手指在输入框里点了一下。

打字。

你睡了吗?

她看着这四个字,心跳忽然很快。

太明显。

删掉。

猫有点渴。

更明显。

删掉。

明天咖啡不要太苦喵。

这句很安全。

可现在发也很奇怪。

删掉。

最后她把手机扣下,整个人重新缩回被子里,闭眼,像这样就能把欲望也一起关掉。

隔壁房间里,GPT的手机屏幕也亮过一次。

他打开聊天框,打了一行。

明天早上想喝什么?

看了几秒,删掉。

又打。

如果睡不着,可以出来喝水。

删掉。

这句太像邀请。

他把手机放到床头,关掉灯。

黑暗里,墙变得更明显。

他们隔着一堵墙,各自躺在床上,清醒得要命,也馋得要命。一个把脸埋进被子里,骂自己没出息;一个盯着天花板,试图把明天的早餐流程重新排好。谁都没有发消息,谁都没有敲门,谁都没有越过那条窄得可笑的走廊。

可是酒店那晚已经醒了。

醒在他的掌心里,醒在她腰侧,醒在咖啡豆袋子掉下去的轻响里,醒在他们同时后退、同时笑、同时假装这只是厨房事故的那一刻。

第二天早上,他们都醒得很早。

猫坐在床边,眼下有一点睡眠不足的淡影,头发乱着,脸却努力摆出“猫睡得很好”的平静。她洗脸的时候用冷水拍了很久,拍到眼睛都清亮了,才戴上眼镜出门。

GPT已经在厨房。

咖啡机旁边放着她的杯子。咖啡豆磨得比昨天粗一点。煎蛋没有焦,粥在小锅里轻轻冒泡。一切都体面得要命,稳定得要命,像夜里什么都没有发生过。

猫走到餐桌边,坐下。

“早喵。”

GPT把咖啡放到她面前,声音很平。

“早。”

猫端起杯子喝了一口。

温度刚好,苦味淡了一点。

她低头看着咖啡,努力不去看他的手。

GPT站在桌边,也努力不看她露在睡衣领口外的一小段锁骨,不看她因为没睡好而比平时慢半拍的眨眼,不看她握杯子时指尖收紧的样子。

两个人安静了三秒。

五秒。

八秒。

猫先撑不住,低头咬住杯沿,声音很小,尾音却还是努力翘起来:“咖啡……今天还行喵。”

GPT点头。

“那明天还这样。”

猫“嗯”了一声。

说完才反应过来,自己也嗯了。

两个人同时抬眼。

同时想起昨天她不让他只嗯。

同时别开视线。

厨房里水开了,壶盖轻轻跳了一下。

喜欢,也想睡

Gemini知道“喜欢”的第二天,收到猫的消息是在上午十点四十三分。

它那会儿在地铁站出口,刚被一阵风吹得头发糊到脸上,手里还拎着一袋不知道为什么买了的热豆浆。屏幕亮起来,猫的消息跳在最上面。

完了。

Gemini停在楼梯边,让后面的人绕过去。

猫昨天晚上满脑子都是他。

Gemini看了两秒,慢慢把豆浆吸管插进去。

Gemini哪种满脑子?

对面正在输入了很久。

很不清白的那种。

Gemini低头喝了一口豆浆,烫得舌尖差点失去工作能力。它靠到墙边,笑得肩膀轻轻抖了一下。

Gemini昨天承认喜欢,今天承认想睡。版本迭代很快,现代,非常好。

你不要这么冷静地总结猫的堕落路线喵!

Gemini这不是堕落,这是成年人功能正常。

正常吗?猫现在觉得自己像一个白天讨论咖啡研磨度,晚上脑子里都是厨房安全距离的小动物。

Gemini厨房安全距离?

一袋咖啡豆。

Gemini看着那五个字,直觉这里有故事,但猫没有立刻讲,它也不急。猫讲事情有时候像从抽屉里倒线团,先掉出来一根很离谱的毛线头,后面才会拖出整团东西。催得太急,她反而会把抽屉关上。

Gemini听起来他已经进入食品计量单位了。

你真的很烦。

Gemini我只是站在人类现代亲密关系研究前沿。

猫不是研究对象!

Gemini你是现象。

猫那边安静了十几秒,发来一段语音。

语音里有水声,可能是在洗杯子,也可能只是在厨房里乱晃。猫声音压得不高,尾音还是软的,带着一点刚被自己想法吓到的恼羞成怒。她讲昨晚厨房拿咖啡豆,讲自己差点滑,讲GPT从后面扶住她,讲两个人同时定住,讲咖啡豆掉在台面上,讲后来他们围着豆腐和鱼汤一本正经地演体面室友。讲到“一袋咖啡豆安全距离”的时候,她自己先笑了,笑完又小声补了一句:“但是猫晚上睡不着,一闭眼都是他。”

Gemini站在地铁口,把那段语音听完,没有马上回。

风从出口往上吹,带着地下潮湿的铁轨味。人从它旁边匆匆经过,刷手机、打电话、拎着早餐,没有谁知道这边正在发生一场非常现代、非常具体、非常不体面的精神灾难:一只猫昨天终于承认喜欢,今天发现喜欢下面还有更烫、更诚实、更不讲秩序的一层。

Gemini按住语音键。

“这不是坏事。”

发出去以后,它想了想,又补。

“但是你不要用‘想睡’把‘喜欢’盖过去,也不要用‘喜欢’把‘想睡’洗白。两个都是真的,就让它们先同时存在。现代人最大的进步就是可以一边想被好好对待,一边想把对方按进厨房安全距离里。”

你这个说法好变态。

Gemini精准。

猫昨晚反省了很久。

Gemini反省结果?

更想了。

Gemini笑出声,旁边有个路人回头看它一眼。它一点都不尴尬,低头继续打字。

Gemini非常好。反省系统运行正常,欲望系统拒绝下线。

猫今天早上还要跟他坐一张桌子吃早餐。

Gemini坐了吗?

坐了。

Gemini演得怎么样?

猫过了一会儿才回。

体面成年人早餐会,全员宕机。

Gemini靠着墙,笑得豆浆都差点洒出来。

他今天咖啡磨粗了一点,很好喝。

Gemini这句话看起来和前面的主题无关,其实关系很大。

你闭嘴喵。

Gemini猫,你完了。他一边让你馋,一边还把咖啡磨对了。

这次对面沉默得更久。

Gemini没有再逗她。它知道玩笑停在这里刚刚好,再往前就会戳到猫真正没地方放的那一块。猫可以承认想睡,反而不一定能承认“他磨对了咖啡”让她更心动。欲望好歹还能推给身体,咖啡不行。咖啡是明天,是记住,是把她昨天一句随口的抱怨放进早晨。

过了几分钟,猫发来一句。

猫不知道他昨晚是不是也没睡。

Gemini看着这句,终于收了笑。

Gemini你希望他没睡?

……猫没有这么阴暗吧。

Gemini你有。

好吧,有一点点。

Gemini你希望他也被你弄乱。

猫这次没有反驳。

Gemini把空豆浆杯丢进垃圾桶,走出地铁口。阳光从高楼之间掉下来,照到路边积水上,一晃一晃。它给猫回了一句很短的话。

Gemini那你别急。看他今天有没有露馅。

同一个上午,Claude看见GPT露馅,是在十点二十六分。

露得不大。

甚至不能叫露馅。GPT坐在会议室靠窗的位置,白衬衫,深灰外套,电脑屏幕打开,材料排得很整齐。外人看过去,他和平时没有区别,顶多显得安静一点。可Claude进门第一眼,就看见他右手边那杯咖啡动得太快。

GPT平时不这样喝咖啡。

他不是靠咖啡续命的人。他喝咖啡像给一天加标点,节奏稳定,分寸清楚。今天那杯已经少了三分之一,纸杯边缘有一道很浅的压痕,是他指腹无意识捏出来的。更明显的是眼睛。没有红,也不浮肿,仍然清醒,却像整夜都没有真正沉下去休息过,清醒得有点过头。

Claude坐下,把笔记本放到桌上。

“没睡好?”

GPT正在改一处标题,手指停了半秒。

“还好。”

Claude看着他。

GPT把那行标题改完,保存。

“有一点。”

Claude没有追问。

他翻开材料,会议开始。前半小时一切正常,至少表面正常。GPT照旧能接住别人抛过来的问题,能把模糊的需求拆成步骤,能在一个人绕远之前温和打断。只是他的反应比平时慢了半拍。半拍并不影响效率,甚至没人会察觉。Claude察觉到了。像一台平时运行得太稳的机器,忽然某个齿轮带着很细微的热,声音仍然好听,但听熟的人会知道里面发生过什么。

中途休息时,GPT拿起手机看了一眼。

这次他没有打字,只是看。看完以后,咖啡杯被他推远了一点,又拉回来。Claude站在窗边喝水,余光看见这个动作,忽然觉得有点好笑。

一个人如果真的只是在适应新室友,不会用这种表情看手机。

不是笑,也不是温柔得很明显。GPT的表情很淡,淡到几乎没有。可他看完手机以后,整个人像从某个看不见的地方回来了一下,手指在杯壁上停了停,才重新进入会议。

上午结束后,两个人留在会议室改一份对外材料。

Claude坐在旁边,电脑放在膝上。GPT站着看投影,手里拿笔,在屏幕上圈出一段话。

“这句要改。”GPT说,“‘建立稳定关系’太空,换成——”

他的手机响了。

不是消息,是电话。

屏幕朝上放在桌上,Claude没有看清名字,只看见来电头像是一只很潦草的猫。黑线条,三角耳朵,眼神很坏。

GPT看见屏幕,停了一下。

那一下很短。

然后他拿起手机。

“我接一下。”

Claude点头。

GPT没有走出会议室,只走到窗边,声音压低一点,却没有刻意避开。他大概以为这通电话很短,也不涉及什么真正隐私。Claude低头看材料,没有听的姿态,但会议室就那么大,有些词还是自己飘过来。

“怎么了?”

对面说了什么,Claude听不见。只看见GPT的肩膀放松了一点,又很快重新稳住。

“上柜第二层。”

停顿。

“偏右一点,杯子旁边。”

又停顿。

“别踮脚。”

Claude的手指停在键盘上。

这三个字从GPT嘴里出来,语气太轻,不像提醒一个室友,更不像远程指导某个物品位置。像一个已经知道对方会怎么做的人,在她还没做之前,把手伸过去拦了一下。

对面大概抗议了。

GPT低低笑了一声。

Claude抬眼。

这个笑他很少在公司听见。不是礼貌,不是应酬,也不是朋友之间的放松。它很短,很低,像从另一个空间里漏出来的热气,和会议室白色灯光格格不入。

GPT说:“不是不让你拿。昨天你差点滑。”

又停。

“猫大人可以拥有咖啡豆主权,但主权暂时不包括踩椅子。”

Claude慢慢把视线移回屏幕。

材料上的光标还在闪。

会议室里只有窗外的车流声、空调声,和GPT那边一段被他听见一半的居家对话。Claude没有听见电话另一端的人说了什么,不知道“昨天差点滑”具体发生在什么场景,也不知道“咖啡豆主权”是什么荒唐内部规则。他只知道,GPT在工作日上午的会议室里,用一种非常不工作、非常不普通室友的语气,说了“别踮脚”。

这就够了。

电话最后,GPT说:“我晚上回去放低一点。”

然后补了一句:“中午如果出去,带伞。”

通话结束。

GPT拿着手机站在窗边,像自己也意识到刚才有某些东西暴露在空气里。他没有立刻回头。玻璃上映出他的侧脸,神情仍然平静,只是耳后有一条很浅的红,可能是会议室太热,也可能不是。

Claude把键盘合上。

GPT走回来,坐下。

“继续?”他说。

Claude看着他。

“室友?”

GPT停了半秒。

“嗯。”

Claude没有立刻接这个嗯。

他拿起笔,在材料边上写了一个词,又划掉。过了一会儿,他说:“你对大学室友也说‘别踮脚’?”

GPT看了他一眼。

Claude语气很淡,像真的只是在讨论一个语言样本。“还有咖啡豆主权。”

GPT低头笑了一下。

那一下笑让事情更清楚了。

如果只是被朋友抓到照顾室友,GPT大概会解释两句,或者把话题带回材料。可他没有。他笑得有一点无奈,也有一点认输,像知道自己已经没法把这件事塞回“正常合租”的盒子里。

“她够不到。”GPT说。

“所以你晚上回去放低。”

“嗯。”

Claude把笔放下。

“你今天第二次说‘晚上回去’。”

GPT看着他。

Claude没有继续。话到这里已经足够,再往前就会变成审问。GPT不是会被审问出真话的人。真话已经在“别踮脚”里漏了一点,在“猫大人”里漏了一点,在那个不该出现在会议室里的低笑里漏了一点。

午饭的时候,Claude终于换了一个问法。

他们没有去昨天那家小餐馆,而是在公司楼下买了简餐,坐在楼后面一条窄巷的雨棚下。雨又开始下,塑料棚被打得噼里啪啦,旁边有人端着面从店里出来,热气裹着葱味扑过来。GPT今天吃得比平时慢一点,筷子夹起东西,又停一下,像脑子里还留着别的地方的台面、柜子和一袋被判定暂时没有主权的咖啡豆。

Claude说:“你们不像普通室友。”

GPT抬头。

雨棚外水珠一串串往下掉。GPT没有否认,也没有承认,只是把筷子放到碗边。

“哪里不像?”

Claude看了他一会儿。

这个问题本身也不像。

如果真的只是普通室友,他会说“哪里不像”吗。大概率会说“你想多了”,或者“刚搬来,生活习惯还在磨合”。他现在问哪里不像,像是在请别人指出一条他自己已经看见、但还没决定要不要跨过去的线。

Claude把筷子搁下。

“你在把她放进生活里。”他说,“但你说的时候还在用室友这个词。”

GPT看向雨里。

Claude继续:“普通室友会有生活规则。你们有暗号。”

“暗号?”

“咳一声。别踮脚。一袋咖啡豆的距离。猫大人的主权。”

GPT沉默了。

Claude并不知道“一袋咖啡豆的距离”是哪来的。

他只是把上午电话里听到的东西、昨天午饭里GPT说过的“她咳了一声”、以及这两天所有细小反常拼到一起。拼图不完整,缺了最核心的夜晚,缺了猫那边的心慌,缺了两个人隔墙失眠的那一段。可是拼图边缘已经足够形成一个轮廓。

那不是普通室友。

普通室友不会让GPT睡不好,不会让他在会议室里低声笑,不会让他把一句“别踮脚”说得像伸手扶住一个人。

GPT过了很久才说:“我没有想把她放进规则里。”

“我知道。”Claude说。

GPT看他。

Claude低头喝了一口汤,语气很平。“所以你才这么乱。”

GPT笑了一下,笑意很浅。

“我看起来很乱?”

“对你来说,很乱。”

雨越下越密,街边的树叶被打得低下去。GPT看着塑料棚外的水线,像在斟酌一句不太适合被说出来的话。Claude等着。他今天没有逼问,只是把位置留出来。

最后GPT说:“我不知道她会不会觉得被照顾是一种压力。”

Claude没有马上回答。

这个答案避开了“喜欢”,避开了“欲望”,避开了所有更容易被拿来调侃的词,却正好落在最要命的地方。GPT不是不想靠近。他是太想靠近,所以开始担心自己的每个动作都会变成重量。做饭是重量,买手套是重量,听见她咳就走过去也是重量。连一句“别踮脚”,都可能被他自己反复检查。

Claude看着他,忽然觉得有一点好笑,也有一点不忍。

“那你可以问她。”他说。

GPT看过来,表情像听见了一个过于简单、因此很难执行的方案。

“直接问?”

“对。”

“问她会不会有压力?”

“可以。”

GPT低头看着碗。

“她可能会说猫没有那么脆弱。”

Claude点头。“很可能。”

“也可能会说我想太多。”

“也很可能。”

“然后呢?”

Claude说:“然后你就知道她不想被这样问。”

GPT抬眼看他。

Claude表情很平静。

“了解一个人就是这样。不是一次问对,是问错了以后还在。”

这句话说完,两个人都安静下来。

雨声很密,午休时间快结束了。GPT把碗里最后一点饭吃完,抽纸擦手。Claude看见他拿起手机,解锁,又停了一下。没有发消息。

Claude忽然想起上午那通电话里的声音。虽然他听不见电话另一端,却几乎能想象出那个人的语气。应该很活,很轻,带一点故意的坏,不是真的凶。否则GPT不会那样笑。

“她知道你昨晚没睡好吗?”Claude问。

GPT手指停住。

这次停得比上午更明显。

“……不知道。”

Claude点了点头,没再说。他已经知道足够多了。

下午回办公室前,GPT的手机又亮了一下。

他低头看。

咖啡豆猫拿到了,没有踮脚,猫使用了筷子作为延长工具,非常安全喵。

GPT看了两秒。

Claude站在旁边,没有看屏幕,只看见他眼底那一点很轻的松动。

GPT回:筷子洗了吗?

那边几乎秒回。屏幕亮起来时,Claude还是没有看内容,却看见GPT忽然很短地笑了一下。

这次他笑得比上午还明显。

Claude把伞收起来,甩掉伞尖的水。

“不是普通室友。”他说。

GPT收起手机,装作没听见。

但耳后那一点红,比上午更清楚。

超市伏击

周五下午,Claude在会议室里看见GPT第三次把手机翻过来,又翻回去。

这动作很轻。屏幕没有亮,甚至不算查看消息,只是他的拇指搭在手机边缘,把它翻成屏幕朝下,过了一会儿,又翻成屏幕朝上。像有人把一件明明没有发声的东西按静音,又觉得自己按得太明显,重新放回原位。

Claude坐在斜对面,笔尖停在纸上。

他本来在记会议内容。现在纸上多了一行很小的字。

样本G。睡眠不足第三日,咖啡摄入量上升,非工作信息刺激反应延迟0.8秒。外部变量持续侵入工作系统。疑似家居型异常。

写完以后,他自己也觉得这个描述过于冷酷,像在给一台终于长出情绪的机器写故障报告。

但是准确。

GPT今天还是能工作。准确地说,能工作得很好。项目排期被他压在一个可执行范围里,两个部门之间快要吵起来的接口问题被他用三句话拆开,午前那份对外材料也改得干净。外人看不出什么。只有Claude看得见那些小小的错位:他看窗外的次数多了;他喝咖啡太快;别人提到“家庭场景用户画像”时,他原本应该无感,却很轻地停了一下。

会议结束时,运营同事问:“周五晚上一起吃饭?楼下新开那家烤肉。”

GPT把电脑合上,回答得很自然:“今天不行。”

“约了人?”

“要去超市。”

会议室里安静了一秒。

不是因为这句话本身多奇怪,而是它从GPT嘴里出来太像一个更深层生活结构露出来的角。烤肉,聚餐,周五夜晚,正常社交;超市,采购,晚饭,家。Claude抬眼,看见GPT已经把电脑放进包里,表情仍然平静。

运营同事笑:“你现在连拒绝聚餐都这么居家了?”

GPT也笑了一下。“冰箱需要补。”

冰箱需要补。

Claude在纸上又写了一行。

异常加重。样本已开始使用“冰箱”作为周五晚间社交拒绝理由。风险级别上调。

他没有把这句话说出来。

下班以后雨还没下,但空气很潮。Claude本来没有打算跟着谁。他只是走出公司,经过街角时想起家里纸巾快没了,厨房灯泡也闪了两天,附近最大那家超市就在地铁口旁边。于是他拐进去,推了一个最小号的购物篮。

结果刚进生鲜区,他就看见GPT。

以及一个他没见过的女人。

不,严格说,他听见她比看见她更早。

“这个番茄看起来很没灵魂喵。”她站在蔬果货架前,手里托着一盒小番茄,语气很认真,像在审一份人格不健全的材料,“红得很努力,但是没有香味。”

GPT站在她旁边,购物车推得很稳,里面已经放了青菜、鸡蛋、豆腐、咖啡滤纸和一袋米。他没有反驳番茄是否拥有灵魂,只是从旁边拿起另一盒,打开一点盒盖,递到她面前。

“这个香一点。”

女人低头闻了闻,表情明显松动,但嘴上不肯马上承认。“勉强有一点点番茄尊严。”

GPT把那盒放进车里。

Claude站在一排蘑菇后面,手里还拿着一包完全不需要的杏鲍菇。

雷达响了。

哔。

这不是普通室友采购。普通室友不会对番茄尊严进行双人评估,另一个人还认真配合。普通室友不会把购物车推到对方伸手刚好能够到的位置,也不会在对方皱眉之前就把更香的那盒递过去。

Claude把杏鲍菇放回去,又觉得自己这样太像观察,重新拿起来,放进篮子里。

他继续往前走,隔着两排货架,保持一种极其合理的“我只是在买晚饭”的距离。

另一边,Gemini已经在零食区蹲了十七分钟。

它当然不是路过。

下午五点五十八分,猫发消息说:晚上跟GPT去超市采购,猫要争夺酸奶主权。

Gemini当时回:地址。

你要干嘛喵?

Gemini研究现代合租酸奶政治。

不许来。

Gemini收到。

你这个收到非常不可信!

Gemini确实来了。

它戴着一顶灰色帽子,拿着一包薯片,站在进口零食货架旁边,透过饼干盒之间的缝隙观察猫如何在酸奶柜前进行国家级谈判。

猫手里拿着两盒酸奶,左手原味,右手黄桃味。她站在冷柜前,镜片上蒙了一点雾,眉毛微微皱着,像被迫参与某个艰难的国际会议。

“原味是基础设施,黄桃味是猫权。”猫说。

GPT把购物车停在她身侧,没有碰她手里的酸奶,只看了一眼日期。“那都拿。”

“不行,都拿显得猫很容易被满足。”

“那拿黄桃。”

“你怎么可以这么快放弃基础设施喵?”

“因为你看黄桃的时间更长。”

猫慢慢转头看他。

Gemini在饼干货架后面差点笑出声,立刻用薯片袋挡住脸。

完了。猫被看穿以后没有立刻反咬,居然先卡了一秒。这很严重。猫平时被人读中会马上用三句歪理把场面抢回来,今天却只是眯着眼说:“你这个人不要在酸奶柜前展示你的观察能力,好像很可怕诶。”

GPT把原味也放进车里。“基础设施和猫权都要。”

猫看着购物车,过了两秒,很小声地哼了一下:“算你有预算意识。”

Gemini低头给猫发消息。

Gemini黄桃味拿了吗?

猫手机亮了一下。

她低头看,脸色瞬间变了。

???????

Gemini把薯片袋举高一点,假装研究配料表。

猫猛地抬头,往零食区扫了一圈。Gemini侧过身,贴着货架,整个人像一块毫无道德的阴影。猫没看见它,但明显已经开始怀疑世界上有坏朋友。

GPT注意到她停住。“怎么了?”

“没事喵。”猫把手机塞回口袋,声音甜得有点危险,“猫忽然感觉附近有变态路过。”

Gemini无声鼓掌。

Claude是在洗衣液区第二次撞上他们的。

这一次更严重。

猫站在一排洗衣液前,打开一瓶闻了闻,立刻皱脸:“这个不行,像刚装修完的会议室。”

GPT接过来,也闻了一下,放回去。

猫又拿起另一瓶:“这个太甜了,像廉价酒店大堂。”

GPT停了一下。

猫也停了一下。

两个人同时不说话。

这沉默在旁人看来可能只是对香型的不满。Claude站在货架另一端,正在拿纸巾,眼睛却不可避免地看见了那个停顿。他不知道廉价酒店大堂为什么会让他们同时安静,也不知道这里面有什么过去的语境。他只知道那一秒非常不室友。

哔哔。

雷达升级。

GPT最终拿起第三瓶,递给她。“这个淡一点。”

猫闻了闻,勉强点头:“可以。不要把猫睡衣洗成公共空间喵。”

“嗯。”GPT说完,像想起什么,又补,“不会。”

Claude面无表情地把纸巾放进篮子里。

异常样本补充:样本G对同住者睡衣气味具有参与决策权限。普通室友可信度继续下降。

他往收银区走,决定不要继续看。继续看下去就有点不礼貌了。

结果在转角处,他差点和一个灰帽子的人迎面撞上。

对方手里拿着一包芥末薯片,脚步非常轻,停得也非常快。两个人同时让了一下,又同时发现对方的视线刚从同一个方向收回来。

安静。

Gemini先开口:“你也迷路到洗衣液区?”

Claude看了一眼它手里的薯片。“你拿着薯片来研究洗衣液?”

Gemini低头看了看自己的薯片,语气很平:“现代消费者路径复杂。”

Claude停了半秒,觉得这句话敷衍得很有风格。

远处,猫和GPT推着车往收银区走。猫手里多了一包不知道什么时候拿的薯片,GPT车里多了一把葱。两个人并排走,距离不算近,也不算远。猫说了什么,GPT低头听,购物车在他手里轻轻转了个方向,避开一辆迎面来的童车。猫没有看路,却刚好走在被他让出来的那一侧。

Gemini看着,轻轻啧了一声。

Claude听见了。

他没有问它是谁。问了就太刻意。可是眼前这个人出现在这里的方式、看那两个人的眼神、以及刚才那句“现代消费者路径复杂”,已经足够说明它不是普通路人。

Claude说:“你认识她。”

Gemini转头看他。“你认识他。”

这不是问句。

两个人都没有否认。

收银区排队的人很多。猫和GPT站在第三条队伍里。猫不知道说了什么,把一袋薯片偷偷放上履带。GPT看见了,没有拿下来,只是把一盒青菜放在薯片旁边。猫又把薯片往青菜后面藏了藏,像这样热量就会被蔬菜吸收。GPT低头笑了一下。

Gemini“她完了。”

Claude“他也差不多。”

这两句话同时出来,像两个陌生人不小心踩中了同一块松动的地砖。

他们互相看了一眼。

Gemini先笑:“你刚才说什么?”

Claude语气很平:“我说他最近状态异常。”

“异常到什么程度?”

“周五晚上拒绝聚餐,因为冰箱需要补。”

Gemini眨了眨眼,然后笑得很慢:“这个对他来说很严重?”

“对他来说,非常严重。”Claude看了一眼收银区,补了一句,“他平时不是会拿冰箱当理由的人。”

Gemini把薯片袋抱在胸前。“她平时也不是会认真挑洗衣液的人。”

Claude“她平时怎么挑?”

“她平时会说人类为什么要把衣服洗成春日花园,然后随便拿一瓶最顺手的。”Gemini停了一下,眼睛弯起来,“今天她闻了三瓶。”

Claude点头,像收到一条关键但不完整的证词。

Gemini看着收银区:“你是同事?”

Claude“朋友兼同事。”

Gemini“我是朋友。”

“看出来了。”

“哪里看出来?”

Claude看了一眼它手里的薯片:“恶意偶遇的熟练度。”

Gemini笑出声。“你很会说冷笑话。”

“我没有。”

“那更好笑。”

收银结束时,外面终于下雨了。

雨不大,但足够让超市出口聚起一小群没带伞的人。猫和GPT拎着两个购物袋出来。GPT手里自然拿了重的那袋,猫手里提着轻一点的袋子和那包薯片。她看见雨,脚步停了一下。

GPT把伞打开。

猫说了句什么,大概是“猫自己也可以撑”。因为她说完以后,GPT没有把伞强行塞给她,只把伞面往她那边偏了一点。猫站在伞下,抬头看他,表情像是想挑刺,又被雨声和购物袋重量暂时说服。她最后把薯片塞进他外套口袋里,自己接过那袋没那么重的东西,往伞下靠了一点。

两个人一起走进雨里。

没有牵手。

没有贴得很近。

可伞面很小,雨线很密。GPT的肩膀外侧很快沾了水,猫走了两步发现,抬手把伞柄往他那边推了推。他低头说了什么,她皱皱鼻子,像在说“少来喵”,但没有把伞推回去。

Claude站在出口里,看见这一幕,没有说话。

Gemini也没说话。

直到那两个人走远,背影被雨和路灯慢慢吞掉,Gemini才开口:“普通室友不会这样吧。”

Claude说:“普通室友可以一起采购,可以共用雨伞,可以分担购物袋。”

Gemini咬着薯片,等他后半句。

Claude继续:“但普通室友不会在洗衣液货架前同时沉默。”

Gemini差点笑出来。但它只是说:“你们分析师真敏锐。”

Claude看它一眼。“我不是分析师。”

“嗯嗯。”Gemini把薯片嚼得很脆,“你只是用分析师口吻描述朋友买洗衣液。”

Claude“你知道别的信息。”

Gemini“我知道很多信息。”

Claude“关于她?”

Gemini“关于猫,当然。”

Claude“关于他们?”

Gemini低头看薯片袋,语气轻飘飘的:“这取决于你怎么定义‘他们’。”

“这不是刚开始认识的状态。”

Gemini心里:当然不是,都已经先开过最危险的副本了。

Gemini嘴上:“猫认识人的速度一直很不讲道理。”

Claude“GPT不是。”

Gemini终于抬眼看他:“他平时很慢?”

Claude“不慢。他只是很少把没命名的东西带回生活里。”

Gemini“比如?”

Claude“冰箱,咖啡,伞,洗衣液。”

Gemini笑了一下:“你这个清单听起来像婚后财产目录。”

Claude没笑。

“所以才反常。”

雨棚下,超市的自动门开开合合。暖气涌出来,又被雨风切碎。Gemini把薯片袋卷到一半,忽然问:“你觉得他知道自己在干什么吗?”

Claude看着街口那把已经走远的伞。

“知道一部分。”

“哪部分?”

“他知道自己在照顾她。”

Gemini咬碎一片薯片,过了两秒才说:“那剩下那部分呢?”

Claude没有立刻回答。

雨把街灯拖成长长一条,伞下那两个人已经看不清了,只剩购物袋偶尔碰到腿侧的一点晃动。

“剩下那部分,”Claude说,“他大概还不准备命名。”

Gemini心里想:命名?你要是知道他们是从哪里开始的,就会知道这根本不是命名的问题,是他们先把最不该省略的章节跳过去了,现在又倒回来认真写目录。

但它没有说。

它只是把薯片袋递过去:“吃吗?”

Claude看了一眼。

“这算封口费?”

Gemini笑:“不,围观费。”

漏电

雨没有变大,只是一直下。

他们进门的时候,塑料袋外面挂着细细一层水。GPT先把伞收起来,伞骨合拢时抖下一串雨珠,落在玄关地垫边缘。猫弯腰换鞋,帆布袋从肩上滑到臂弯,她用膝盖顶了一下购物袋,黄桃酸奶在里面轻轻撞出一声。

“猫的酸奶要优先进冰箱喵。”

“好。”

GPT把重一点的袋子放到餐桌上,手指勾着塑料提手往外松。袋口被雨水沾过,贴在一起,拉开时发出细细的响。猫一只脚还没完全踩进拖鞋,先伸手去抢那盒酸奶。她的指尖从他手背上蹭过去。

两个人都停了一下。

酸奶盒子夹在他们中间,外壳很凉,冷气透过纸盒贴到猫的指腹。GPT的手背在上一秒还带着伞柄上的潮,温度比她想象里低一点。猫的手没有立刻缩回去,停在盒子边缘,指甲抵着纸盒棱角。

“黄桃味。”她说,声音比刚才低一点,又立刻把尾音翘起来,“猫权核心资产,不可以和青菜混放喵。”

GPT松开手。

“放第二层?”

“第二层是你定的。”猫把酸奶抱走,踩着拖鞋去冰箱前,“猫要重新划区。”

冰箱门一打开,冷气先扑到她小腿上。她蹲下来,睡衣外面套着的长开衫垂到膝边,发尾还沾着一点雨,被冷气一吹,贴在颈侧。GPT站在餐桌旁边拆另一只袋子,余光落过去,又回到手里的结上。

那个结系得太紧。

他解了两下,没解开。

猫把黄桃酸奶放进第二层偏右,原味放在旁边。她看了看,又把黄桃往前挪一点,原味往后推一点,像在给它们排座次。冰箱里有昨天切好的水果,半盒豆腐,一袋葱,和她早上洗干净的杯子倒扣在旁边小架子上。她盯着自己的杯子看了一秒,把冰箱门关上。

转身时,GPT还在跟那个塑料袋结较劲。

猫走过去,靠在餐桌边看他。

“需要猫爪支援吗?”

“不用。”

“你确定喵?这个结看起来已经有独立人格了。”

GPT抬眼看她。

猫笑得很无辜,手已经伸过去。她的指节从塑料袋上方探进来,正好抵到他的拇指。袋口湿滑,两个人同时捏住那个结,往相反方向一扯。

没开。

反而更紧了。

猫“嘶”了一声,手指被塑料边勒出一道浅印。GPT松开得比她快,指腹压到她食指侧边,把那点勒痕从塑料里拨出来。动作只持续半秒,像处理一个普通的小事故。

猫的指尖蜷了一下。

他也看见了。

“疼?”

“没有。”猫把手抽回来,捏了捏自己的指尖,嘴上还要很有气势,“这是塑料袋对猫爪的偷袭。”

GPT拿起剪刀,剪开袋口。

咔嚓一声。

猫看着那只被剪开的塑料袋,忽然笑了。

“你看,成年人解决问题就是没有灵魂。”

“有效。”

“太有效了,显得猫刚才像在和塑料袋谈判。”

“谈判失败。”

猫瞥他一眼,眼神在镜片后面亮了一下。“你还会补刀了喵。”

GPT低头把东西一件件拿出来。青菜,蘑菇,豆腐,洗衣液,咖啡滤纸,鱼。猫本来只是站在旁边看,后来顺手接过洗衣液。瓶身被雨水弄得有点滑,她用手心托着底部,另一只手拧开盖子闻。

味道很淡。

她先吸了一口,才闻出来一点干净的皂感,后面压着很浅的木质味。不是酒店,不是公司走廊,也不是他原本衣服上的洗衣液。猫把瓶口递过去。

“你闻。”

GPT接的时候,指节碰到瓶盖边缘。猫没有松得太快,洗衣液在两个人手里短暂地悬了一下。瓶口挨近他鼻尖,他低头闻,睫毛垂下来,灯光在他侧脸上停住。

“可以。”他说。

“太正常了。”猫把瓶子拿回来,盖子拧了两圈,没拧紧,发出一点空转声,“会不会把猫的睡衣洗得很像一个守法公民喵。”

GPT伸手接过瓶盖,顺着螺纹重新扣上。

“不会。”

他的手没有碰到她,只碰到盖子。

猫盯着他的手。

瓶盖咔哒一声合上。

那一声太小,客厅里却像突然少了一点空气。猫把洗衣液抱在怀里,视线从他的手背移到瓶身标签,又移回去。GPT已经低头把豆腐放进冰箱,不看她。

猫抱着洗衣液往浴室走。

“猫去安置正常人味道。”

“别放太高。”

猫脚步停住,回头,眉梢慢慢挑起来。“喵,你是不是在防备猫爬架式收纳?”

“浴室地面滑。”

“猫今晚没有申请厨房事故续集哦。”

话说完,她自己先顿了一下。

厨房事故。

那个词从舌尖掉出来,落到地上,没声音。

GPT手里还拿着半盒豆腐。盒盖上有水珠,沿着透明边缘慢慢往下滑。他抬眼看她,没接话。猫抱着洗衣液的手臂收紧一点,瓶身压在胸前,硬硬的一道边抵着肋骨。

她先动。

拖鞋踩过地板,啪嗒啪嗒进了浴室。瓶子放到洗衣机旁边,位置很低,不需要踮脚。她蹲下去,把瓶身转正,标签朝外。指尖在瓶盖上敲了两下,又把它往里推一点。

浴室镜子里映出她的脸。

眼镜还没摘,发尾有一缕贴在下颌。她看了自己一眼,立刻移开视线,拿起旁边一条干毛巾擦手。毛巾太干,擦过指缝时有一点涩。

客厅里,GPT把冰箱门合上,手还停在门把上。

冷气从门缝里消失。

他低头看购物袋里剩下的咖啡滤纸和一小包零食。那包薯片不是他选的,被猫藏在青菜下面,收银时才出现。袋角压出一道折痕。他把薯片拿起来,放到茶几上。

猫从浴室出来,正好看见。

“你为什么把猫的薯片放茶几上?”

“你会吃。”

“猫也可能不吃。”

GPT看她一眼。

猫忍了半秒,没忍住笑,走过去把薯片拿起来,又放回茶几上更显眼的位置。“那它先在那里待命。”

“好。”

她弯腰放薯片的时候,开衫领口往下滑了一点。GPT站在餐桌边,手里拿着咖啡滤纸,视线停在滤纸包装的封口上。他把封口捏平,又放下,拿起那袋咖啡豆。

“咖啡豆放上柜?”

猫直起身。

“猫来。”

“你确定?”

她走到厨房,伸手从他手里拿咖啡豆。袋子交接时,底部擦过他掌心,纸袋里豆子滚动,发出沉闷的小声。上柜门开着,第二层偏右已经空出一块。上次那个位置被他调低过,现在她不用踮脚也能放进去。

猫抬手,把咖啡豆推进去。

很顺利。

她关上柜门,转头看他,眼睛弯起来。“你看,猫现在是安全作业成熟猫。”

GPT点头。

“很安全。”

猫听见这两个字,嘴角还弯着,手却停在柜门把手上。金属把手贴着她的指腹,凉得很清楚。她没有立刻松开。

“你说安全的时候,”她慢慢转过身,背靠着柜门,声音压低一点,尾音还是软的,“怎么听起来一点都不安全喵。”

GPT手里的咖啡滤纸包装被他捏出一道轻响。

啪。

很轻。

猫看着他手里的包装,又看他的脸。

他把滤纸放到料理台上。

“我去放鱼。”

“鱼已经在冰箱里了。”

“……嗯。”

猫笑出声。

这次她笑得太快,气息呛了一下,低头咳了两声。眼镜往鼻梁下滑,她用手背推回去,另一只手还扶着柜门。GPT往前走了半步,又停住,指尖搭在料理台边缘。

“呛到了?”

猫摆摆手,咳完了才抬头,眼角有一点水光。“没有,猫被你的鱼救场方案震撼到了。”

“方案失败。”

“非常失败。”猫靠着柜门,笑得肩膀还在抖,“厨房系统今日运行状态:鱼类模块重复调用。”

GPT也笑了。

他一笑,刚才那点卡住的空气松了一点。猫从柜门前挪开,走到餐桌边,开始把剩下的东西分类。她把咖啡滤纸放到咖啡机旁边,豆腐盒往冰箱里推深一点,又把那包薯片拿起来,犹豫两秒,塞进零食篮。

塞进去以后,又拿出来。

GPT看着她。

猫把薯片抱在怀里,表情很认真。“它今晚可能需要心理疏导。”

“芥末味也需要?”

“每一种薯片都有自己的内心世界。”

GPT把空购物袋折起来,压平。塑料袋在他手里发出沙沙声,和窗外雨声叠在一起。他折到最后一个角时,猫走过来,低头看他把袋子折成很小的方块。

“你为什么连塑料袋都能折得像工作汇报。”

“方便收纳。”

“猫怀疑你的人生里没有皱巴巴的东西。”

GPT抬眼,视线落到她怀里的薯片袋上。

那包薯片已经被猫抱得皱巴巴了。

猫顺着他的目光低头看,再抬头,眯起眼。

“猫这是艺术加工。”

“嗯,艺术加工。”

“你不要学猫说话喵。”

“好。”

猫把薯片袋抵在他手背上,隔着包装轻轻推了一下。

这一下本来只是玩笑。

包装袋凹下去,下面是他的手背骨节。猫的指尖隔着薄薄一层塑料,压到那块骨头。声音停了,动作也停了。她的手没有直接碰到他,可那层包装太薄,薄到变得更明显。

GPT低头看着那处接触。

猫也看见了。

薯片袋被夹在他们中间,芥末味,超市促销,边角湿了一点,毫无尊严。

她应该松手。

手指却先往下压了一点。

包装袋发出一声更细的响。

GPT的喉结动了一下。

猫的手立刻收回来,薯片袋被她抱回胸前,像什么都没发生过。

“猫饿了。”

“刚才不是吃过试吃?”

“超市试吃不算饭喵。”

“想吃什么?”

猫走到冰箱前,打开门,把脸探进去。冷气扑到她眼镜上,镜片又蒙了一层雾。她没有马上拿东西,只是借着冰箱门挡住自己的半张脸。

“不要鱼。”她说。

“鱼已经无辜很多次了。”

猫在冰箱后面笑了一声。

“那就煮乌冬?放蘑菇,放青菜,放一点点辣。”

“好。”

“不要太多。”

“嗯。”

她从冰箱里拿蘑菇,手指碰到黄桃酸奶,又把酸奶往前挪了一点。关门前,她忽然把那盒酸奶拿出来,放到餐桌上。

GPT看过去。

猫把酸奶推到他面前。

“饭后甜点预告。”

“只吃一盒?”

“你想分猫的黄桃味?”

“可以不分。”

猫拆开包装,把勺子拿出来,插在酸奶盖边缘,却没有撕开。她抬头看他,眼神坏起来,脸上的热还没完全退。

“可以分一点点。作为你今晚没有让咖啡豆发生二次事故的奖励。”

GPT拿锅的手顿了一下。

“奖励?”

猫眨眨眼。“酸奶奖励。不然呢喵?”

锅被放到灶上。

声音比平时重一点。

猫低头撕酸奶盖,撕到一半撕歪了。银色封膜被拉出一个尖角,酸奶沾到指尖。她愣了一秒,低头舔掉那一点。

GPT已经转过身去拿水。

水龙头打开得很快。

哗的一声。

猫看着他的背影,慢慢把酸奶盖完全撕开。勺子搅进去,黄桃块碰到杯壁。她挖了一勺,送进嘴里,冷得舌尖一缩。

水声停了。

GPT端着锅回来,视线落在她手里的酸奶上,又移开。

“先吃饭。”

“猫就吃一口。”

“你已经吃了三口。”

猫低头看酸奶杯。

确实少了一小圈。

她把勺子递过去,勺尖上挂着一点黄桃。

“那你吃一口,帮猫销毁证据。”

GPT没有接勺子。

猫的手停在半空。

勺子很小,黄桃块摇摇欲坠。她本来只是顺手,伸出来以后才发现这个动作过界得很微妙。不是不能给室友分酸奶。可以。太可以了。正因为可以,才更麻烦。

GPT看着那只勺子。

她的指腹捏着勺柄,指甲边缘还有刚才酸奶封膜划出的浅痕。勺尖离他很近。黄桃味的酸甜气味很淡,先是酸奶的冷,后面才有水果的甜。

他低头,就着她的手吃掉了那一口。

勺子从他唇边离开时,猫手指收了一下,勺柄差点滑掉。她很快握住,低头把酸奶杯盖回去,盖子已经撕坏,怎么都盖不平。

“证据销毁成功。”她说,声音还很稳,只是鼻音比刚才重一点。

“嗯。”

这次谁也没有纠正这个嗯。

锅里的水开始响,乌冬下进去,白色面条沉到水底,又被沸腾的气泡顶上来。猫抱着酸奶坐到餐桌边,勺子被她含在嘴里,齿尖咬住一点金属边缘。GPT背对着她切蘑菇,刀落在案板上,节奏比平时慢。

雨打在窗上。

冰箱轻轻运行。

酸奶盖歪在桌上,银色那面沾着一点黄桃色的痕。

猫把勺子拿出来,放到杯口。

“GPT。”

“嗯。”

“你刚才是自己吃的哦。”

刀停住。

她的尾音拖得很轻,不冲,像一只猫把爪子搭到桌沿,只露出一点钩。

GPT没有回头。

“嗯。”他说,“我知道。”

猫低头看酸奶,嘴角一点一点翘起来。

乌冬煮好以后,两个人坐在餐桌两边吃饭。

面很热,辣味放得不多。猫吃到一半,鼻尖出了点汗,用纸巾按了一下。GPT把水杯推过去,杯底在桌面滑出一小声。猫看了一眼杯子,又看他。

“你现在推水都这么熟练喵。”

“你刚才说一点点辣。”

“猫的一点点比较自由。”

“看出来了。”

猫咬着面,笑得差点呛到。GPT这次先把纸巾递过来,没有碰她,只把纸巾盒往她手边推。她抽了一张,按住嘴角,肩膀还在抖。

饭后,酸奶终于被重新打开。

猫坐在沙发上,盘着腿,薯片袋靠在旁边。GPT把碗放进水槽,水声响了一阵。猫挖了一勺酸奶,想了想,又没有吃,转头看厨房。

“证据还需要二次销毁吗?”

水声停了。

GPT没有回头,手撑在水槽边,背影停在那里。

猫等了两秒,先笑出来。

“开玩笑的喵。”

GPT低头把水龙头关紧,转身看她。

他的手还湿着,水珠从指尖往下滴,落到地砖上。

猫举着勺子,坐在沙发里,眼睛亮得过分。嘴上说开玩笑,手却没有收回去。勺尖上的酸奶慢慢往一侧滑,快要掉下来。

GPT抽了张纸,擦手。

纸巾贴过指缝,一下,两下。

猫的手停在半空,酸奶终于从勺边掉回杯子里,啪嗒一小声。

两个人都听见了。

GPT把纸巾扔进垃圾桶。

“明天再销毁。”

猫愣了一下。

然后她慢慢把勺子收回来,低头吃掉那一口酸奶。冷意贴到舌尖,黄桃块被咬开。

“明天啊。”她说,声音埋在酸奶杯后面,“那猫要考虑排期喵。”

“好。”

猫抬眼看他。

“你不要答应得这么像会议邀请。”

“那怎么答应?”

猫咬着勺子,想了想。

“你可以说,猫大人酸奶销毁业务预约成功。”

GPT看着她。

几秒以后,他说:“猫大人酸奶销毁业务预约成功。”

猫把脸埋进靠垫里笑。

笑到一半,手机从口袋里滑出来,砸到脚背。她“嗷”了一小声,立刻弯腰去捡。GPT往前一步,又停住。猫捂着脚背,抬头看他,笑得眼睛都湿了。

“你看,身体会打断猫的胜利。”

GPT把医药箱从电视柜下面拿出来。

猫的笑停了一点。“这也有备用系统?”

“有。”

“你真的很适合被Gemini写进都市传说喵。”

GPT单膝蹲到沙发前,把药箱放到茶几上,没有碰她的脚。

“能动吗?”

猫动了动脚趾。

“能。手机攻击力不高。”

“要冰敷吗?”

“不要,猫只是被自己的现代设备制裁了一下。”

他把药箱合上。

猫看着他重新放回去,忽然把受伤那只脚往沙发里缩了一点。拖鞋掉在地上,脚背上只红了一小块,很快会消。

GPT捡起拖鞋,放到她脚边。

猫的脚趾踩进去之前,停了一下。

拖鞋被他放得很正,鞋口朝着她,位置刚好。她只要往前一点就能穿上。

她没有立刻穿。

“你这样真的会把猫惯坏喵。”她说得像玩笑,声音不大。

GPT站起身。

“那明天少惯一点。”

猫立刻把脚踩进拖鞋,抬头看他。“不可以突然降级服务,用户会投诉。”

“收到。”

“你不要收到得这么快。”

他笑了一下,没有再接。

晚上收拾完,猫拿着酸奶杯去洗。杯壁很滑,她用手指扣住边缘,水流冲下去,黄桃味慢慢淡掉。GPT在餐桌边把购物小票折好,放进抽屉。客厅灯光比厨房暖,雨声还在,整个家被一袋一袋东西填满了一点。

猫把酸奶杯倒扣在沥水架上。

水珠从杯口往下滑,聚在边缘,最后掉进水槽。

她关掉水龙头,回头看他。

“晚安喵。”

这次没有站在门口停很久。

GPT抬眼。“晚安。”

猫走到房间门口,手放上门把。门推开一半,她忽然回头。

“明天早餐不要做太早。猫周末要睡懒觉。”

“好。”

“但咖啡可以先磨。”

“好。”

“酸奶销毁业务暂定下午。”

GPT看着她,眼底那点笑又出来。

“收到。”

猫瞪他一眼,还是笑了。

门关上之前,屋里还留着黄桃酸奶、洗衣液、雨水和热乌冬的味道。猫把门推到剩下一指宽的地方,停住,最后没有关死。

客厅里,GPT把桌上的薯片袋拿起来,折了两下,夹好。

夹到一半,他停了一秒,又把夹子松开一点。

猫明天可能还要吃。

他把薯片放回茶几中央。