Tsukuyomi Space, finally owns the original App.
From a web page to a cross-platform client that really belongs to Tsukuyomi Space.
I had an idea a long time ago:
Tsukuyomi Space cannot remain in a browser forever.
Of course it's good.
Open the link to use, do not need to be installed or consider the platform. However, as Tsukuyomi Space continues to join the functions of Room, Yachiyo, Long Memory, Live2D, Agent, Music, Games, Gallery, and Creative Tools, the browser itself is beginning to become a restriction.
So this time I did something I've always wanted to do:
Make a real original for Tsukuyomi Space, App.
The project is now open:
GitHub:tsukuyomi-space-app
Current version is 0.6.4 Tests Version。
This isn't about putting a page in an App.
First and foremost.
Tsukuyomi Space App Not the Electron web site, or simply open the Yachiyo.hk inside WebView.
Use by whole client Flutter Realization.
The main interfaces, such as Room, posts, squares, personal centres, growth systems, Wiki, Gallery, contributors, games, settings, Live2D, etc., are independent Flutter.
It's still connected to the existing Tsukuyomi Space backend, so your:
- Tsukuyomi Space Account
- Articles
- Comments and Message
- Collection
- Growth data
- Chat Record
- Long-term memory
- Journal
- Announcements
It's all available.
In other words:
The web page and App are not two Tsukuyomi Spaces, but two portals to the same Tsukuyomi Spaces.
Clients are responsible for providing experiences closer to desktop software and mobile applications, while websites continue to assume open access and service-end capabilities.
Why do you want to be an original client?
It's not just "do an App that looks more complete."
What really made me decide to re-establish my client is that Tsukuyomi Space is doing a lot of things that are less and less like a traditional blog site.
Room is more than just a chat. Page Noodles.
Now Room also contains:
- AI Dialogue
- Live2D role
- Long-term memory
- Journal
- Knowledge base
- Photo Message
- TTS Voice
- Music
- MCP Tools
- Environmental information
- Role Action
- Multiple device sync
If full reliance on browsers continues, the experience of many functions on desktop, cellular and system capabilities will remain limited.
And in the original client, Room can really become the core of the application.
Now open Tsukuyomi Space App.Will go straight into Room.
What you see is not just a page on the website, but more like:
A "Yachiyo room" that has been in the equipment.
PC and cell phones, different.
I'm not simply reducing the percentage of desktop layout to mobile phones.
Now Room will use two different layouts based on the equipment.
Desktopend
Desktop end use:
Role stage + chat area
structure.
The left side is reserved for the Yachiyo and Live2D scenes, while the right side is responsible for:
- Chat
- Agent
- Journal
- Information
- Sign
- Shortcut
- Input Area
This way, the character is not completely overshadowed by chat content and is closer to a real AI desktop assistant.
Move side
Cell phones use completely different ideas.
Live2D scenes are directly the subject of the entire Room, with suspended control areas at the top, chat content and input box stacked at the bottom.
When the keyboard pops up, the input area will follow the adjustment.
In other words, mobile phone versions are not "compressed computer versions".
It was redesigned from the beginning in the way mobile phones were used.
Yachiyo is finally actually living in App.
That's part of the whole client I care about.
Tsukuyomi Space has been trying to make Yachiyo not just a stand-up or chathead, but a real role on the website.
So the original App has regained Live2D.
Currently used are:
Cubism Native Core + Native Framework + Flutter Original Rendering Link
Model data access Flutter via primary interface, and draw texture grids for Live2D.
In other words, this is not:
- GIF
- Video
- Web Animation
- JavaScript Live2D Page
And then you embed the client.
It's the real application of Live2D data.
Support has been provided for:
- Watch.
- Blink.
- Breathe.
- Model physics
- Emoticons
- Port
- Role Action
- Action queue
- Emotional response
- Position and Size Adjustment
- Normal/Reverse Mask
- Added/ Multiply
And when the voice is played, the PCM volume changes for real audio, so the character mouth follows the sound.
It's a long way from my ideal role in numbers.
But at least now, Yachiyo is no longer just a part of the web site.
AI configuration is also fully handed to users
App itself does not embed a model API Key shared by all.
For the first time in Room, you can directly configure your own model:
- API Address
- Model Name
- API Key
Current support includes:
- OpenAI Compatible Chat Completions
- OpenAI Responses
- Anthropic Messages
- Ollama
- Tsukuyomi Space website agent
Compatibility:
So whether you use online models, build your own API gateway, or local Ollama on your computer, you can access Room.
Yachiyo can talk.
Apart from LLM, App re-enacts the voice module.
Support has been provided for:
- OpenAI Compatible TTS
- MiMo
- MiniMax
- ElevenLabs
- GPT-SoVITS
- Tsukuyomi Space website agent
Models and TTS can be configured separately.
For example:
textLLM
↓
八千代生成回复
↓
TTS 合成语音
↓
客户端播放声音
↓
分析真实 PCM 音量
↓
驱动 Live2D 口型
This is also an important basis for continuing to refine Yachiyo ' s real-time interaction.
Long-term memories are brought to the original client.
Room's long-term memory system was also preserved.
After login to the Tsukuyomi Space account, you can choose:
- Use device local memory
- Use cloud memory
- Merge local memory to cloud
And can directly manage memory:
- Search
- Add
- Edit
- Delete
- Modify Rating
- Vector Sync
Visitors continue to use their own memory.
The same logic was maintained between chats, journals and long-term memories.
As a result, Yachiyo was able to continue to use synchronized data after the same Tsukuyomi Space account was entered into the same equipment.
That's what I've always wanted:
The equipment can be replaced, but Yachiyo and your story should not start all over again.
Not only Room, but Tsukuyomi Space is entering App.
Early I was really just gonna do a room client.
But when I did, I found out:
If you leave Room and you have to jump back to the browser, this App is always incomplete.
So it just started to move the whole station.
A large number of Tsukuyomi Space functions have been implemented in their original form.
Main Stage
Directly:
- Browse Articles
- Search
- Classification
- Sort
- View Markdown/ HTML content
- View Formula
- View Code Highlight
- Comments
- Yes!
- Collection
- Share
Reading data also continue to be based on the original Tsukuyomi Space rule.
Square.
Square:
- Message
- Reply
- Yes!
- Search
- Filter
Also complete directly in App.
Create
App already has a real original article editor.
Support:
- Markdown
- Classification
- Cover
- Summary
- Picture material
- Local Draft
- Shortcut
- Code Block
- Other Organiser
- Article Editor
- Release
So when you use the desktop version later, you can write articles directly in Tsukuyomi Space App without opening the browser.
Wiki, Gallery and the annex library have moved in.
Currently, the client already contains original:
Wiki
It contains current encyclopedias, pictures and related cross-links from Tsukuyomi Space.
Gallery
Support:
- Browse
- Search
- Filter
- Random pictures
- Image Upload
- Picture Management
The image is also uploaded at the end of the device.
Annex
Attachment upload support:
- SHA-256
- Split Upload
- Breakpoint Restore
- Pause
- Cancel
- Try again
This will be important for the ever-increasing creativity of Tsukuyomi Space.
The pixel factory has also become an original tool.
The pixel workshops are not simply embedded in web pages.
Now it also has the Flutter original realization.
Including:
- 192 x 108 canvas
- Brush
- Brush
- Wreckproof.
- Rubber wipe.
- Fill
- Palette
- Grid
- Background
- Undo / Redo
- Scale
- Picture Import
- Picture Export
- Draft
- Community release
- Yes!
- Share
I also hope that more and more of these “small tools” will be present in Tsukuyomi Space.
It does not need to be very serious, but it should be fun enough.
Even Kaguya's moving in.
This may belong to:
"Come on, let's move the game."
The client is now able to run the Kaguya troupe.
And not just open the web game.
Game:
- Project data
- Image
- Shader
- Box2D Physics
- Audio
- Keyboard Operations
- Touch Operations
- Highlight
- Presentation of achievements
Both have access to the original client.
It also makes me feel more and more:
Tsukuyomi Space may not be just a blog in the future.
It's more like a growing digital world.
There's another important thing on the desktop: Agent.
Windows, MacOS and Linux versions are now independent Agent Mode。
After entering Room you can switch to Agent tab.
Select a work directory, and then give the task directly to Agent.
For example:
text帮我检查这个项目的问题
text修改这个页面的 UI
text整理这些文件
text分析项目代码并修复错误
Desktop Installers currently carry a fixed version:
The model configuration is directly reused by Room.
Agent can operate:
- Documentation
- Command
- MCP
- Draft articles
- Tsukuyomi Space content
At the same time, additional steps are being taken to identify sensitive operations.
For example:
- Operation files outside the work directory
- MCP Call
- Upload
- Release
- Server Write
It will be clear what will be implemented.
The command will also run through the system sandbox.
My goal is not simply to plug an "AI dialogue box" in App.
I hope that in the future Yachiyo can really:
Talking can help you.
Agent and Agent OS are two different things.
Here, by the way.
At the moment, on Tsukuyomi Space:
Agent OS
Still stand-alone Web applications.
It wasn't fully migrated to Flutter.
What's happening now is... Desktop Agent Workspace。
Both directions may continue to draw on each other ' s design and capabilities, but they are still different at present.
A real cross-platform.
This development choice, Flutter, has another important reason:
I don't want Tsukuyomi Space to exist only in Windows or Android.
Current projects include:
- Android
- iOS
- macOS
- Windows
- Linux
Publication process for five platforms.
Android
Provides original APK.
Most Android phones use the ARM 64 version directly.
Windows
Provides a Windows installation program or a portable version.
macOS
Provide Universal DMG:
Supporting also:
Linux
Provide:
iOS
Unsigned IPA is currently available.
Users are required to sign with their Apple account or certificate.
Data security is also important.
As App started saving:
- API Key
- Login Cookie
- Model Configuration
- Chat Record
- Draft
For these things, security issues can no longer be dealt with as easily as regular web pages.
Currently:
API Key and Login Cookie
It will be stored in a system secure storage.
And:
- General Settings
- Local Chat Cache
- Draft
- UI Configuration
is saved in the application of your own local data.
Login Cookie will not be sent to LLM or TTS services at the same time.
Model requests will only be sent to your own configured model address.
There's nothing off the line.
Native clients also joined local caches.
Some of the pages that are already cached can still be viewed after the net is broken.
And:
- The draft will not be lost.
- Completed chat will not be lost
- Other Organiser
Synchronization continues after the network is restored or the same account is re-logged in.
Data caches between accounts are also segregated.
This is important for a truly long-term client.
App is not a substitute for a web version
This app doesn't mean I have to stop maintaining the page.
On the contrary.
In the future, I would have preferred this relationship between the two sides:
text 月读空间
│
┌───────────┴───────────┐
│ │
Web App
│ │
随时打开 / 分享 深度使用 / 系统能力
│ │
└───────────┬───────────┘
│
同一套账号与服务
Web still has a minimum threshold of access.
See a link, click and get into Tsukuyomi Space.
And App is responsible for:
- Fuller Room
- Live2D
- Local Data
- Desktop
- Local File
- More stable long run
- More in-depth OS capabilities
They're not who replaces who.
It's a whole Tsukuyomi Space.
Why is it still a test version?
Although there are a number of functions, I still define them as:
Test version.
Because there is a long distance between “capable” and “real fit for daily use”.
There's a lot to be done next.
For example:
- UI / UX continued optimization of platforms
- The interactive experience on the phone.
- Live2D performance optimization
- Optimization of action performance
- Yachiyo's emotions and movements.
- TTS and mouth effects
- Long-term memory
- Agent Stability
- Native system notification
- Multiple Device Experience
- Installation and upgrading experience
- iOS real time
And most importantly:
"Tsukuyomi Space."
Many pages have now undergone primary migration, but this does not mean that the design is over.
On the contrary, I'm going to rethink it:
If Tsukuyomi Space was an App from the beginning, what should it look like?
It's not like it's always one-on-one.
About the future
I'm less and less interested in simply calling Tsukuyomi Space a “personal website”.
Because now it's in there:
- Blog
- Community
- AI
- Live2D
- Long-term memory
- Agent
- Wiki
- Creative Tools
- Gallery
- Game
- Digital role
A lot of things that were never planned at first.
These functions are not designed from the beginning.
More often just:
"This seems interesting. Want to try it?"
And then it's just like today.
So is the original App.
It is far from complete.
I can even say,It's just that it's really starting to be an App phase.
In the future, I hope Yachiyo is not just:
"The character on the website that can talk."
It's a real connection to Tsukuyomi Space:
Content, memory, tools, equipment and you.
Turn on the phone, there she is.
Turn on the computer, she was there.
She still remembers what happened before.
You can talk when you need to talk.
Work can be done together when it is necessary.
Maybe that's what I really want to do with Tsukuyomi Space.
Download and Project Address
The client is still at the test stage.
If you want to experience it, you can go to GitHub Releases to download:
Download Tsukuyomi Space App
Project source code:
redchenk/tsukuyomi-space-app
Web version:
Tsukuyomi Space yachiyo.hk
The last sentence:
Tsukuyomi Space does not suddenly “development complete”.
It'll probably be in:
"There seems to be more to it."
status.
And this time, Tsukuyomi Space finally came out of the browser.
Then let's slowly make it look like a real space for us.