Kira Bouschen, freelance AI automation consultant
AI automation for document-heavy processes.
I take on projects for startups and SMEs and automate the workflows that come back every week: reading receipts and contracts, moving data between systems, generating reports. Built with AI where it holds up, and with ordinary code where that is more reliable.
- Available for
- Projects and ongoing support
- Location
- Berlin or remote
- Languages
- English and German
- First step
- Free initial call
How I can help
Three areas in which I take on work. Each one says what you have at the end.
Process and document automation
Many teams lose time on recurring tasks: copying data out of documents, consolidating information, passing on status updates. I analyse these processes and automate them. The process decides which tool is used, and often it is an ordinary script.
Result: a workflow that runs without manual work, on your infrastructure, documented and introduced to your team.
Automated reporting
Every month you pull the same figures out of Jira, Blue Ant or the database and write the same text around them. I automate that step, with figures calculated in advance, so the report contains nothing the model has guessed.
Result: reports that are ready on schedule, and the code behind them in your repository.
Bots & assistants
Your information lives in five systems and nobody has time to pull it together. An assistant that knows your calendars, task lists and internal APIs, and remembers what was discussed yesterday, takes that work off your hands.
Result: an assistant connected to your systems that your team can extend on its own.
Your topic is not listed? Write to me anyway. I will tell you honestly whether I am the right person for it.
Discuss your projectHow to work with me
I work as a freelancer and take on well-defined projects as well as ongoing support, on site in Berlin or remotely. When I have time for your project is something we clarify in the initial call. The start is always the same:
-
Initial call, free of charge.
You describe the workflow that is costing you time. I tell you whether automating it is worthwhile, and if not, why not.
-
A small first step.
One self-contained part of the process, clearly scoped. At the end something is running that you can judge for yourself.
-
Expand or hand over.
If it works, we build on it. If not, you get the code, documentation and an introduction and carry on without me. Both are a good outcome.
What you can rely on
Process first, technology second.
Not every problem needs AI. If a simple script will do, I will say so.
A clear handover.
Documentation and an introduction are part of every project.
Automation that checks itself.
Every automation comes with tests and error messages that state the cause. A workflow that silently does the wrong thing costs more than any error message.
You stay in control.
Code, credentials and documentation stay with you, in your repositories. If you want to carry on without me, you can.
The initial call is free and does not commit you to anything.
Book an initial callWhat happens to your data
With document-heavy processes, the first question is rarely a technical one. My default answer: processing within the EU, a data processing agreement before the first document, no use of your content for training. I connect models behind a layer of my own, so switching to a self-hosted model remains a matter of configuration. Where content is stored, it is encrypted; only what the database has to calculate with stays in plain text.
What I have built
Four systems from my own development work and my studies, each with a note on where it came from.
AI reporting from project management data
Groq
Llama 3.3
REST
University project, Blue Ant interface
Raw data from a project management system becomes readable reports without anyone copying figures by hand. The connection to the model provider sits behind a layer of its own, so switching providers is a matter of configuration and never forces a change to the reporting code.
The more important part was the prompt architecture. Every figure is calculated beforehand and passed to the model as a fixed number.
Topics: LLM integration, REST APIs, reliable output.
Auroq
Python
FastAPI
React PWA
SQLite
LLM
Own product, used by me every day
Why a private project is listed here: it is the only piece of work I can show in full, and it has the same problems as an incoming invoice process. Many external systems that fail. Documents and speech as input. Data that must not fall into the wrong hands. Operation that nobody supervises all the time.
It is used through a Telegram bot or an installable web app. Both talk to the same data layer, so an entry made on the go and one made at the desk never drift apart.
The daily planner has grown into 18 tracking areas, each with its own way of entering data, all connected through a shared analysis.
Six decisions that carry the project
One data model, three interfaces
Telegram bot, REST API and progressive web app share one data layer and one set of rules. New features are built once and are available everywhere. Where bot and web app perform the same calculation, a shared table of cases keeps both sides in line and saves writing the test twice.
Fifteen external systems, one error rule
Microsoft Graph, Google Calendar, Todoist, Oura, Withings, Apple Health and nine more are attached to the same integration layer. Timeouts, expired tokens and outages never end in a misleading error message, and an outage at an external service never throws anyone out of the application itself.
Encryption as an operational decision
Personal content is encrypted field by field on disk, the key lives only in memory and is entered again after every restart. Only what the database needs to calculate with stays in plain text: numbers, dates, reference keys. What this decision costs in operation is written down in the documentation.
Natural language as input
“Invoice from Meyer for 480 euros received, due in 14 days, forward to accounting” is split into up to five actions in a single model call and run against the same functions as the commands. Voice messages take the same route via Whisper, a photo of a meal goes through an image model. If parsing fails, a follow-up question comes back; nothing is guessed.
Available offline, but only where allowed
The web app works without a connection, but its cache is a fixed allow list: only the daily view, nothing from analysis or notes. Three kinds of entry are submitted later when offline, everything else fails immediately and visibly. Silent data loss would cost more than a clear error message.
Multi-user down to the scheduler
Every user has their own tokens, their own database and their own set of scheduled jobs. So that a query without a user reference never creeps in, a test inspects the source code itself and keeps the number of such places from rising again.
Scope
A surface this size only stays maintainable for one person if tests enforce the rules. That is why there are so many.
Safeguards
A test run from Auroq; CI starts the same run on every push. Automation that nobody checks only gets noticed once it goes wrong.
Technology
- Backend
- Python 3.12 · FastAPI · SQLite (WAL) · APScheduler · Fernet
- Frontend
- React · TypeScript · Vite · Tailwind · Service Worker, Web Push
- AI
- Groq and OpenAI-compatible providers behind an abstraction layer · Whisper · image analysis
- Operations
- systemd on my own server · GitHub Actions on every push · nightly backup
Research synthesizer for political science
LangChain
Gemini
Streamlit
Own project, open source
There are two ways to a report. The fast one is a fixed chain of one web search and one model call. The thorough one is an agent with a search tool that decides for itself how often to search until the question is sufficiently covered. Both produce the same structure: context, positions of the parties involved, arguments, implications and numbered sources.
Political research easily tilts in one direction. That is why, in fast mode, a second model call checks after every report whether left, centre and right perspectives appear in the sources, and names the one that is missing.
Topics: agentic AI, tool calling, structured output.
Source code on GitHub
CBT companion bot
Python
Gemini
Own project
The memory has three levels: the running conversation, a condensed summary of the session and a long-lived core. This keeps the context intact for weeks without the requests growing ever longer and more expensive.
Topics: conversation design, long-term memory, Python/Gemini.
Planning something similar? Let us talk about it.
Discuss your projectAbout me
I am Kira Bouschen, a master’s student in business informatics at HTW Berlin with a focus on AI. Alongside my studies I work as a freelance AI automation consultant. At Mercedes-Benz I developed a multi-agent system in a Scrum team and saw where AI projects in large organisations fail: rarely because of the models, mostly because of the process around them. Since then I have been building systems in which exactly that part works: bots with long-term memory, LangChain agents, automated analysis of project data.
My studies combine technology with business processes. That is why, on every project, I ask about the workflow first and only then about the tool.
- HTW Berlin Master’s in business informatics, focus on AI (ongoing)
- Mercedes-Benz Development of a multi-agent system in a Scrum team
- Freelance AI automation for startups and SMEs
Tell me about your project
Three or four sentences are enough. I reply within 48 hours with an honest first assessment, even if it is that automation does not pay off here. The initial call is free of charge.
Remote or on site in Berlin. English and German. For confidential material, I am happy to sign a non-disclosure agreement in advance.
What helps me give a first assessment
- Which workflow is costing your team time?
- How often does it come up, and how many people are involved?
- Which software and data are part of it?