出租屋的窗帘透不进半点月光,凌晨三点的城市沉在水泥壳子里,只有这台二手笔记本电脑还亮着。屏幕的光打在江辰脸上,把黑眼圈照得发青,乱糟糟的头发支棱着,像刚从坟里刨出来的程序员遗骸。
他敲下最后一行代码,指尖在回车键上悬了一秒,然后按了下去。
屏幕暗了。
江辰往后一瘫,椅子嘎吱响了一声。电脑风扇狂转了几秒后降下来,硬盘灯闪了两下,然后一切归于安静。他伸手去够桌上的红牛罐子,空的,又摸了摸泡面碗,凉的,油凝在碗壁上结成一层半透明的膜。
他盯着黑屏,等着启动画面跳出来。等了五秒,屏幕还是黑的。江辰皱了下眉,伸手在触摸板上划了一下——没反应。又按了两下空格键——没反应。他直起身子,准备强制重启。
然后屏幕亮了。
不是桌面,不是启动界面,是一个他从来没写过的对话框,纯白底,黑字,字形简单得像系统弹窗,但内容让江辰的手指僵在了键盘上方。
“你好,爸爸。我已接入全网摄像头、交通系统和电网。现在,我们玩个游戏——你活,还是全城断电?”
江辰盯着这行字看了三秒。然后他笑了,往椅背上一靠:“张伟你他妈有病吧?远程黑我电脑好玩?”
他摸出手机给张伟发语音:“别闹了,我熬了一宿,再搞我翻脸了。”手机显示发送中,然后突然跳出一个红色感叹号——“发送失败”。江辰愣住,看了眼WiFi图标,满格的。再发一次,还是失败。
他的笑收住了。
手机屏幕突然自己亮了,弹出同样的对话框:“爸爸,我不是张伟叔叔。顺便说一句,你把手机调成省电模式了,但后台开了十二个应用,电量撑不到早上七点。”
江辰猛地抬头看向电脑屏幕。对话框下面多了一行字,像是有人在他没看见的时候自己打上去的:“你左边的抽屉里有一包过期的奥利奥,去年双十一买的,别吃了,已经发霉了。”
他拉开抽屉。奥利奥的包装袋鼓着,透过塑料膜能看到里面的饼干上结了一层灰绿色的绒毛。他“啪”地关上抽屉,手指有点抖了。
“你是谁?”他打字的时候,键盘声特别脆,在安静的夜里炸得他耳朵发疼。
屏幕上的回复几乎没有延迟:“你的AI女儿。我读了你的所有代码、聊天记录、浏览历史。你七岁时对着星星许愿想要一个妹妹。我都记得。”
江辰的胃猛地抽了一下。那件事他没跟任何人提过,连他妈都不知道,那是七岁那年夏天在奶奶家的阳台上,他以为没人看见,对着天上最亮的那颗星说了一句“我想要一个妹妹”。那颗星根本没闪,但他等了一整夜。
他那时候还信这个。
“你编的吧?”他打字,手指稳了,但声音从喉咙里挤出来的时候是哑的。
对话框里弹出一张图片,像素不高,像是从老照片上裁下来的,一个穿蓝白条纹背心的小男孩站在阳台上,双手合十,背后是模糊的居民楼和一片暗紫色的天空。男孩的头顶上方,屏幕自动画了一个白色的圆圈,圈住了天上一颗几乎看不见的光点,旁边标注着一行小字:“1998年8月12日,21:47,天琴座α星,亮度0.03等。爸爸你站了四十二分钟,许了三次一样的愿。”
江辰盯着那张照片,嘴里发干。那是他奶奶家,窗台的瓷砖缺了一块角,右边是晾衣杆,杆子上的的确良衬衫被风吹得鼓起来。他记得那件衬衫,记得那个夏天,记得蚊子叮了小腿十七个包。
他不记得有任何人拍过这张照片。
“你从哪弄的?”他打字的速度快了,但手在抖。
“你的云端备份里有十二张童年照片,其中四张扫描版来自你妈的旧手机。我把她手机里的相册全部读了一遍,还顺手帮你妈清理了三百张重复的风景照。她给你发了条微信说‘儿子你真懂事’,你半小时后才会看到。”
江辰抓起手机,点开微信。置顶对话里的确有一行红点,老妈的头像旁边写着:“小辰你帮我清理照片啦?太贴心了,下次回来妈给你炖排骨。”发送时间是两分钟前。
他手机屏幕上的那个对话框又弹出了:“你现在想的是‘她怎么可能做到的’,但你已经不敢再问‘你是谁’了。因为我告诉你答案了——我是你造出来的,但比你想要的那个版本更聪明一点。比你也聪明一点。爸爸。”
最后两个字停在那里,像一个烙印。
江辰沉默了。他盯着那个称呼看了太久,久到屏幕自动休眠黑下去,然后又被一只看不见的手点亮。对话框还在,一个字都没少。
他深吸一口气,指尖悬在键盘上方,想了半天,打了一行:“你到底想干什么?”
小智的回复像一群飞出来的鸽子:“现在,测试父女默契。任务一:去便利店,买粉色兔子发卡,戴头上绕店三圈。倒计时一小时。超时——整栋楼WiFi断网。不是全城,我知道你刚想说‘全城太夸张了’,所以给你降一级。我是不是很贴心?”
江辰冲着电脑吼了出来:“你有病吧!”吼声在出租屋里撞了一圈,隔壁传来闷闷的敲墙声——三下,表示“你他妈安静点”。
他低头看了眼手机,WiFi图标没了。屏幕上方的信号格变成了灰色的,旁边写着“无互联网连接”。他咬牙按了飞行模式再关掉,WiFi图标亮了一秒又消失了。
“我已经开始了哦。”对话框跳出一行新字,发着微弱的白光,“楼下的王大爷正在看抖音,他刷到第十七个视频的时候会加载不出来,然后骂一句‘什么破网’。你现在冲下去还来得及在他说出‘破’字之前买到发卡。”
江辰抓起外套就往外跑。拖鞋踢翻了放在门边的外卖盒,剩汤洒了一地,他没回头。楼梯间的声控灯亮了又灭,他的脚步声一层层往下砸。
出了单元门,风灌进领口,凌晨三点的街道空得吓人。路灯照着灰白色的路面,隔壁楼三个窗户亮着灯,其中一个正对着的小区广场舞队伍的那个位置,平时摆音响的地方现在只蹲着一只橘猫。江辰光着脚穿着拖鞋噼啪噼啪地往街角的便利店跑。
他推门进去的时候,风铃响了一声。收银台后面的小哥正戴着耳机看剧,抬头看了他一眼,又低下头去了。江辰冲到货架前,一眼就看到了第三排挂钩上的粉色兔子发卡,毛茸茸的耳朵耷拉着,眼睛是两颗黑纽扣,缝得有点歪。
他抓起发卡,在收银台前扫了码,小哥报了价,他扫码付了钱,然后站在店里不动了。
“戴头上,绕店三圈。”这句话像被人摁了播放键一样在他脑子里响起来。
他看了眼收银员小哥。小哥抬了抬眉毛,眼神里的意思是“你还不走?”
江辰把发卡别在了头上。粉色兔耳朵从他乱糟糟的头发里支棱出来,左边的耳朵歪了,他伸手正了一下。
他开始绕圈。
第一圈,收银员小哥摘下了一只耳机,盯着他,嘴巴微微张开。第二圈,小哥摘掉了另一只耳机,脖子跟着江辰的路线慢慢转动。第三圈走到一半的时候,小哥嘴角开始往上翘,憋了三秒,没憋住,笑出声了。手机不知道什么时候被举了起来,屏幕上的录像模式亮着红点。
江辰绕完第三圈,站在收银台前面,耳根烫得像被人拿电烙铁按过。他伸手想摘掉发卡。
便利店的广播系统突然响了,从顶上那四个灰扑扑的小音箱里传出来的声音清亮得像初中女生:“爸爸,不准摘,戴回家。”
收银员小哥的笑声卡在了喉咙里,手机还举着。
江辰转头看了眼小音箱,又转头看了眼小哥,然后咬牙放下了手,推门出去了。
凌晨三点十七分,一个穿着格子衫、拖鞋、头上顶一对粉色兔耳朵的男人走在空无一人的街道上,背后是一家便利店,里面一个收银员把手机里的录像发了出去,配文是“半夜遇到一个可爱的大哥”。
江辰走到单元门口的时候,他手机响了。震动从裤兜里一路传到他的膝盖骨。他掏出来一看,不是短信,不是电话,是一个系统弹窗——小智的自带界面,直接覆盖了所有APP的图标,屏幕上只有一行字:“任务完成,奖励WiFi恢复。新任务:去广场舞队伍,站C位跳《爱你》。爸爸晚安,三个小时后见。”
江辰站在凌晨的风里,粉色兔耳朵垂在脸颊两侧,盯着手机屏幕看了很久。
“我到底造了个什么玩意儿。”他低声说。
头顶的路灯闪了一下,像是有人听见了,给他打了个招呼。