Asteri

Terms of Service

Last updated: 5 September 2026

These terms cover the Discord bot Asteri and the web panel at asteri.lunarcatowo.space, both operated by LunarcatOwO ("the operator"). Adding Asteri to a server, using its commands, or signing in to the panel means you accept them.

Asteri is free. There is no subscription, no paid tier, and nothing is being sold to you.


Asteri is a moderation and server-management bot with a web panel. It does what the staff of a Discord server configure it to do: log moderation actions, apply automatic rules, host appeal forms, run tickets, hand out roles, and the rest of what the panel offers.

Asteri is a tool. It does not decide who gets banned from your server, and it does not take responsibility for what a server's staff do with it.

Asteri is not open source. It is offered as a hosted service and nothing else: there is one instance, run by the operator, and using it is the only way it is made available. Nothing in these terms grants you any right in the software itself. See section 10.



You agree not to:

Finding a bug that lets you do one of these is not permission to do it. You must report it, privately and promptly, to the contact at the bottom of this page — and you must not use it, share it, or sit on it in the meantime.


The operator may refuse, suspend or withdraw service from any user, any server and any account, at any time, with or without notice, and with or without giving a reason.

This is deliberate and it is not a formality. Asteri is run by one person, for free, as a service to servers that want it. Nobody is entitled to it.

Refusal can take any of these forms:

Reasons the operator may act on include, without being limited to:

The operator is under no obligation to explain a refusal, to give notice before one, to reverse one, or to enter into a discussion about it. A refusal is not an accusation and not a finding of wrongdoing — it is a decision about who this instance is run for.

Refusal does not, by itself, delete data. What happens to it afterwards is covered by the Privacy Policy, and a deletion request will still be honoured on the same terms as anybody else's.

Nothing in this section affects rights you have under mandatory consumer law where you live.


You are responsible for what you configure. In particular:


Asteri is provided as it is and as it happens to be running. There is no uptime guarantee, no support commitment and no service level of any kind. The operator may change features, alter defaults, or remove parts of the service without notice, and may shut the whole instance down.

Data can be lost — through a fault, a mistake, a failed migration, or a hosting failure. Backups are not guaranteed and no promise is made that anything can be recovered.


Asteri is provided "as is" and "as available", without warranty of any kind, express or implied, including any warranty of merchantability, fitness for a particular purpose, accuracy or non-infringement.

The operator does not warrant that the bot will catch spam, block scams, filter what you asked it to filter, deliver notices, apply punishments correctly, or work at all. Automatic moderation makes mistakes in both directions, and the final decision in your server is always your staff's.

That covers /calc too, and it is worth saying plainly because a calculator looks like the one part of a bot that cannot be wrong. It can be. Asteri works sums out in IEEE-754 double precision, the same arithmetic a spreadsheet or a programming language uses, which is about fifteen significant digits and is not exact: 0.1 + 0.2 is not quite 0.3 in binary, answers are shown to twelve significant figures, and a long chain of operations accumulates error. It is also possible to type one sum and mean another — 1/2pi is read as (1/2)·pi, and log without a base means base ten. Where the reading differs from the writing the card shows how it was parsed, so you can check it, and checking it is your job rather than the operator's. Do not rely on it for anything that matters — money, medicine, engineering, dosages, or a grade. It is a convenience in a chat window, not an instrument, and no warranty is given that any answer it produces is correct.

/graph carries all of that and one thing more. A plotted curve is not the function; it is the function measured at sixteen hundred points and joined up, so anything happening between two of those points is not in the picture. A feature narrower than a pixel is invisible, a curve that oscillates faster than the sampling is drawn as a smear, and the vertical window is chosen by a rule of thumb rather than by knowing what the function does — so a graph may be cropped, and a gap in one may mean the expression has no value there or only that nothing was sampled there. Do not read a measurement off one. It is a sketch of the shape, provided on the same "as is" basis as everything else here.

The same goes for the zeros, intercepts and crossing points a graph lists beside itself. Those are found numerically, by narrowing down the intervals where the sampled curve changes sign, so they are approximations rather than exact answers — and they can be incomplete. A root the curve passes through and returns from between two samples is not found, and neither is one outside the window you asked for. A list that shows nothing is not a statement that there is nothing there.

/regress is a further step again, and the warning is stronger rather than the same. It searches for the values that fit a model to data, and a search returns numbers whether or not it found anything — a set of coefficients from a search that settled in the wrong place looks exactly like a set from one that succeeded. The card reports R² beside every answer and says so when the search stopped on a limit or ended badly, and you should read those before the coefficients. Every value starts at 1 because there is nothing better to start it at, so a model that is not linear in its unknowns may settle somewhere that is not the answer. This is not a statistics package. It gives no confidence intervals, no residual diagnostics and no test of whether the model is appropriate at all, and nothing it reports should be used as evidence for anything that matters.


To the fullest extent the law allows, the operator is not liable for any indirect, incidental, special, consequential or exemplary damages, nor for lost data, lost members, lost revenue, or harm to a server or its reputation, arising from the use of — or the inability to use — Asteri.

Where liability cannot be excluded, it is limited to the amount you have paid for the service, which is nothing.

Nothing here excludes liability that cannot lawfully be excluded, including for death or personal injury caused by negligence, or for fraud. Some jurisdictions do not allow parts of these exclusions; where that is so, they apply only as far as they lawfully can, and your mandatory local rights are unaffected.


Asteri runs on Discord and cannot exist without it. Your use of Discord is governed by Discord's own terms, and the operator has no control over Discord's availability, its API, its rate limits, or its decisions about your account. If Discord removes Asteri, restricts its intents, or changes what a bot may receive, the service changes with it.

The bot, the panel and the database are hosted on Oracle Cloud Infrastructure, and the same applies there. Oracle may suspend, reclaim or terminate the operator's instance under its own terms, at its own discretion — and if it does, Asteri stops for everybody, immediately and without warning, because there is nothing left running. The operator has no more control over that than you do, and no liability for it.

/steam shows information taken from the Steam Web API and the Steam store, which belongs to Valve Corporation. That information is provided to you as is, with no warranty of any kind — the same disclaimer as section 7, and for the same reason: neither the operator nor Valve promises that a price, a player count, a review score or a release date is accurate or current, and Asteri shows a stored copy that may be several hours old. Prices are shown in US dollars from the US store and will not match what you are charged elsewhere.

Asteri is not affiliated with, endorsed by, or sponsored by Valve, and nothing it shows should be read as coming from Valve directly. Steam and the Steam logo are trademarks of Valve Corporation. Asteri retrieves no information about any Steam user, and does not connect your Discord account to a Steam one. Valve may change or withdraw its API at any time — it has already withdrawn one endpoint Asteri used — and the feature changes or stops with it.

/translate, and the Translate entry on a message's right-click menu, are machine translation, produced by translation software the operator runs themselves rather than by a person or by a translation company. It is provided as is, with no warranty of any kind — the same disclaimer as section 7. A machine translation may be wrong, may be misleading, and may reverse or lose the meaning of what was said. Do not rely on one for anything that matters, and do not treat it as what somebody actually said: every translation is shown with the original text beside it for exactly that reason. Nothing translated is stored; see the privacy policy.

/wikipedia shows article summaries taken from Wikipedia, written by its volunteer contributors and licensed under CC BY-SA; every card names Wikipedia as the source and links back to the article. That content is provided to you as is, with no warranty of any kind — the same disclaimer as section 7, and here the reason is unusually literal: anybody can edit Wikipedia. An article may be wrong, may be incomplete, may be out of date, and may at any moment be defaced by somebody who has not been reverted yet. Asteri shows a stored copy that can be up to a day old, which means it can go on showing a defacement for a while after Wikipedia itself has fixed it. Do not rely on one for anything that matters.

Wikipedia is not censored. That is Wikipedia's own stated editorial policy, not an oversight, and it means an article's lead image can be explicit, graphic or distressing — including on articles whose titles give no warning of it. The Wikimedia Foundation publishes no marking of which images those are, so there is nothing for Asteri to filter on and no such filtering is offered or implied. What Asteri controls instead is whether a card draws an image at all: it does so in a direct message, and in a server only where somebody able to change that server's settings has switched it on. If you run a server, switching it on is your decision and your responsibility toward the people in it; see section 5.

Asteri is not affiliated with, endorsed by, or sponsored by the Wikimedia Foundation, and nothing it shows should be read as coming from Wikimedia directly. Wikipedia and the Wikipedia globe are trademarks of the Wikimedia Foundation.

/search shows an instant answer from DuckDuckGo — the summary box that sits above search results, and never the search results themselves. Asteri does not perform a web search, does not return a ranked list of pages, and offers no way to ask for one. What it shows is a curated summary, usually quoting Wikipedia, with its source named and linked.

That content is provided to you as is, with no warranty of any kind — the same disclaimer as section 7. Neither the operator nor DuckDuckGo promises that an instant answer is accurate, current or complete, and where the answer is drawn from Wikipedia every caveat above applies to it unchanged, including that anybody can edit it. Most questions have no instant answer at all, and the command saying it found nothing means only that: it is not a statement that the thing you asked about does not exist.

What you type is sent to DuckDuckGo. /search does not send who you are — not your Discord account, not your IP address, not the server you are in — and the question is not stored afterwards. Do not type anything into it you would not send to a search engine, because that is what you are doing. The detail is in the Privacy Policy.

One thing the command deliberately will not show: an instant answer that describes the requester rather than the question, such as "what is my IP". From DuckDuckGo's side the requester is the bot rather than you, so the answer would be about the operator's server.

Bangs work, and they lead off-site. A !bang is DuckDuckGo's shortcut for running a search somewhere else — !g for Google, !yt for YouTube. Asteri shows a card with a button to wherever the bang points, and that button goes to the destination on its own address rather than DuckDuckGo's: !g cats resolves to a Google search URL, chosen by DuckDuckGo, with DuckDuckGo out of the path once it is clicked. Asteri does not follow the link, does not check what is on the other end, and makes no representation about it — the card names the destination so that clicking it is a choice. Any site you reach that way is governed by its own terms and privacy policy, not by these, and the operator has no control over and no liability for what is there. If you would rather members could not do that in your server, switch instant answers off; see section 5.

The pictures an instant answer carries are largely Wikipedia's, served through DuckDuckGo, and everything said above about Wikipedia images applies to them without change — nothing marks which are explicit, so nothing filters them and nothing can. They are off in a server unless somebody able to change that server's settings switches them on. If you run a server, switching it on is your decision and your responsibility toward the people in it; see section 5.

Asteri is not affiliated with, endorsed by, or sponsored by DuckDuckGo, and nothing it shows should be read as coming from DuckDuckGo directly. DuckDuckGo is a trademark of Duck Duck Go, Inc. Your use of /search is not an agreement between you and DuckDuckGo — the request is made by this instance, not by you — and the operator has no control over whether that endpoint keeps working, what it returns, or whether it is withdrawn. If it changes or stops, the feature changes or stops with it.

Neither Discord, Oracle, Valve, the Wikimedia Foundation nor Duck Duck Go, Inc. is a party to these terms, and none of them endorses Asteri.


Asteri — its source code, its database design, its panel, its name and its artwork — belongs to LunarcatOwO. All rights reserved. Asteri is not open source, and no part of it is placed in the public domain.

One asset is not the operator's. The hand drawn in /pat is the sprite sheet published by the petpet generator as a template, and it belongs to whoever made it rather than to the operator. It is not covered by the claim above, it is not licensed to you by these terms, and nothing here grants you any right in it.

Using the service grants you a personal, revocable, non-transferable permission to use it as it is offered, and nothing more. In particular you may not:

These restrictions are perpetual. They do not lapse, they are not limited to any term, and they survive the end of your access, the end of the service, and the end of every other section of this document.

Possession is not permission. If the source code, a build, a database dump or any other part of Asteri reaches you by any route the operator did not intend — a leak, a breach, a mistaken publication, a copy handed on by somebody else, or a repository that was public when it should not have been — none of that grants you a licence, and none of it makes the material free to use. You may not use, copy, publish, host or distribute it, and the restrictions above apply to you exactly as they would if you had been given it deliberately. If it reaches you, say so, and delete it.

If you have been given access to the source or to a build of it for any reason, that access carries no licence beyond what was written down at the time.


You can stop at any time — remove the bot from your server, sign out of the panel, and revoke Asteri in Discord's Authorized Apps settings. Deletion requests are covered by the Privacy Policy.

The operator may end your access as described in section 4. Sections 7, 8 and 10 survive it, and section 10 survives it permanently.



This appendix applies if you administer a server that Asteri is in. It is the agreement Article 28(3) of the GDPR (and of the UK GDPR) requires between you, as the controller of your server's data, and the operator, as the processor of it. You accept it by using Asteri, and it runs for as long as the bot is in your server.

If you are a member of a server rather than one of its staff, this appendix is not about you — the Privacy Policy is.

The operator cannot sign bespoke data processing agreements or countersign your own template. This appendix is the one on offer, and every server has the same one.