An AI product studio · Hong Kong

AI that completes the task.

apptah makes agents and apps. An agent makes a plan. A person approves the plan. The agent writes the files, publishes the posts, or gives an answer from the source data. The product uses an LLM only when the task needs an LLM.

The founder of apptah
The founder, Hong Kong
12
Products made
5
Live on the App Store and the web
2
Free and open source
35B
Parameters on an iPhone

01. Product list

Ten products are released.

Each product below is in use today. The product is on the App Store, on the web, on private hardware, or free to copy.

012026 to present/macOS and WindowsPrimary

OpenCowork

An agent that completes the task.

You state the result. You approve the plan. The agent returns the files. You do not use a terminal. You do not write code.

  • Plan, then act. The agent reads files and writes files. The agent makes the documents. The agent reports each change.
  • One interface. You can use 14 or more AI providers. You can add a function. You do not install the app again.
  • Folder limits. The agent opens only the folders that you permit. You see each change. You approve the change before the agent saves it.
  • Tests. The decision logic has more than 300 automated tests. The app installs from one package.
OpenCowork shows a task. The user asks for a list of the documents in a folder. The agent does the task.
fig. 01. You request a result. The agent makes a plan. The files come back.

022025 to present/WebLive

Autopost

The channel publishes posts on a schedule.

Autopost finds a current topic. Autopost writes the post in your voice. A person can approve, edit, or reject the post.

  • Your voice. Autopost learns your voice from text that you wrote. Autopost writes a draft, sets the time, and publishes the post.
  • Separate clients. Each client is separate. Each client has a daily spend limit and a usage log. You can predict the cost.
  • One post, one time. Autopost does not publish one post two times. A failed post does not stay hidden. A stopped job starts again.
The Autopost screen shows follower growth, publish status, and account data.
fig. 02. The morning screen shows a healthy queue. A person controls the queue.

03Self-hosted/On your hardwarePrivate

TaxSearch

You get answers from your files.

You ask a question in normal words. TaxSearch reads your PDF files, spreadsheets, presentations, and email. TaxSearch does not send the files to a cloud service.

  • Words and meaning. TaxSearch finds a result from the exact words and from the meaning.
  • Your hardware. The full process runs on your hardware. Regulated files and private files do not go to an external service.
  • A team. A team can use collections. Each tenant is separate. A viewer is included. You can search a set of files on the same day.
TaxSearch answers a question from private tax documents in 11 milliseconds.
fig. 03. The screen shows two answers in 11 milliseconds. TaxSearch sends zero bytes to a cloud service.

042024 to 2025/iOSOpen source

PrivateAgent

A model with 35 billion parameters runs on an iPhone.

The model runs on an iPhone. The iPhone does not need a network. You do not need an account. Data does not leave the iPhone.

  • Size and speed. The model has 35 billion parameters. The model uses 1.4 GB of memory. On an iPhone 16 Pro, the model writes three words each second.
  • Storage. The iPhone reads the model from storage when the model needs the data. The app compresses the chat history. A chat can continue for a longer time.
  • Licence. The project is free. The licence is Apache 2.0.
The PrivateAgent repository. You can run a model with 35 billion parameters on an iPhone. The model stays on the iPhone.
fig. 04. The repository holds a large model that runs on an iPhone.

052026 to present/iOS

Champions Advisor

The advice comes from a calculation.

You take a screenshot of the team preview. The app tells you which items to bring and which move to use. The app calculates the result before it gives the advice.

  • A calculation. The engine calculates damage, speed, and the matchup. The engine is deterministic. The engine has 89 automated tests.
  • The screen. The app reads the screen on the iPhone. The model explains only a result that the calculator proved.
  • The business. The app has paid subscriptions. Each user has a spend limit.
Champions Advisor reads a battle team on the screen. The app recommends the first three units. The calculation is complete.
Logic tests89
Screen readOn the iPhone
Model taskExplain only
fig. 05. Six units oppose six units. The app calculates the counter move.

062026 to present/iOSApp Store

HKeTravel

The route does not use an AI model.

HKeTravel shows the fastest route across Hong Kong. HKeTravel shows the bus arrival time. The app uses the timetable calculation. The app does not use an AI model.

  • One route. One route can include the bus, the minibus, the rail, and the light rail. The app ranks each route by the door-to-door time. The app shows the live arrival time.
  • The fare. The fare on the screen is the fare that you pay. The fare includes the interchange discount.
  • Start and network. The app starts in 1 second. The previous start time was 7 seconds. The app works with no network. The app has four languages.
HKeTravel shows bus stops in Mong Kok. The arrival time is correct to the minute.
HKeTravel compares routes across Hong Kong by rail and by bus. The screen shows the fare.
fig. 06. Mong Kok at 01:11. The next bus time is correct to the minute.

072024 to 2025/iOSApp Store

SwipeClean26

You remove a photo with one swipe.

The app finds a blurred photo. The app finds a near-duplicate photo. You swipe to remove the photo. The photo does not leave the iPhone.

  • On the iPhone. The app finds blur on the iPhone. The app finds similar photos on the iPhone. The app does not upload a photo.
  • The checks. The app does the slow checks only for a likely match. The check is fast. The check uses less battery power.
  • The App Store. The app is on the App Store. The app has revenue. The design matches the latest iOS.
You swipe through the photo library. The app removes the photos that you reject.
SwipeClean26 groups similar photos. You review the group.
fig. 07. The app sorts 2000 photos.

082025 to present/macOSApp Store

DragDrop26

The menu bar holds your files.

You drag a file to the menu bar. The menu bar holds the file. You drop the file into the app that needs the file.

  • A file source. The shelf is a file source. Each app accepts the file that you drop.
  • Cleanup. You set the storage limit. You set the time that the app keeps a file. The app removes old files.
  • Revenue. The app has revenue on the Mac App Store.
DragDrop26 holds files, photos, and links in the macOS menu bar.
fig. 08. You drag a file to the shelf.

092025 to present/Agent pluginOpen source

OpenClaw Memory

The agent keeps a memory.

An agent reads the same history on each turn. That read has a cost. OpenClaw Memory stores the history. The agent does not read the full history again.

  • Three records. The memory uses keywords, meaning, and structured facts. The memory returns only the part that the agent needs.
  • No network. The memory runs with no network. The memory runs beside the agent.
  • Licence. The project is free. The licence is MIT. The project does not need activation. The project does not need a cloud service.
OpenClaw is a private AI agent. The agent runs on your hardware.
fig. 09. The agent keeps this memory between two chats.

102025 to present/Client deliveryDelivered

COMFi

The studio delivered a complete store.

The store is for a Hong Kong brand. The brand sells in nine or more Asian markets. The store includes payments, order email, alerts, and content management. The store worked on the delivery date.

  • Modules. The studio made the modules. The modules send payments, order email, web push alerts, and chat alerts. A content manager is included.
  • The price error. The studio found the price error before a charge. The error sets the price at 100 times the correct price. The studio corrected the error. No customer paid the wrong price.
  • The release. The store has three languages. The store has automated tests. The payments are protected. The store runs on the client domain.
The COMFi store is an online shop for a Hong Kong brand. The shop has three languages.
fig. 10. The client shop is open in three languages.

The product list includes an on-device translation app. The app does not call an API. The list includes a cartoon image generator for educators. The studio made 12 products. This page shows 10 products.

02. Method

The studio uses five rules.

The studio applies these five rules to each product above.

1. Complete the task. A product must return a result. The result is a written file, a published post, or an answer from the source. A chat is not the result.
2. A person approves the result. A draft stops at a person. A plan stops at a person. A file change stops at a person. The person can approve, edit, or reject the item.
3. Private is the default. The studio puts the function on the device or on your server first. Private material does not leave your site. This rule is the start. A price does not buy privacy.
4. Use an LLM only when the task needs an LLM. If the task needs only a Python script, the product uses the script. The product does not use an LLM. If a calculation is more correct than an LLM, the product uses an algorithm. The product does not use an LLM for every task.
5. A released product is the standard. The product list counts an App Store listing, a live service, a paying customer, and an open licence. The list does not count a demonstration.

03. Open source

You can read the source of two products.

The source is public. The projects do not need activation. The projects do not need a cloud service.

PrivateAgent

The model has 35 billion parameters. The model runs on an iPhone. The engine reads the model from storage. The engine compresses the memory. All work stays on the iPhone. The iPhone does not send the data to a server.

Apache 2.0 Source ↗

OpenClaw Memory

This memory is for a personal AI agent. The memory uses keywords, meaning, and structured facts. The memory runs with no network. You put the memory beside the agent. The agent does not read the full history again.

04. Contact

Do you have a task to complete?

The studio does product engineering. The studio deploys these tools on your hardware. The studio accepts a difficult brief. This address reaches a person.