Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
elythia
command
Command elythia is the single executable of the server.
|
Command elythia is the single executable of the server. |
|
internal
|
|
|
activitypub
Package activitypub provides ActivityStreams types and the helpers for rendering local model entities into AP-compatible JSON-LD documents.
|
Package activitypub provides ActivityStreams types and the helpers for rendering local model entities into AP-compatible JSON-LD documents. |
|
activitypub/ld
Package ld provides a JSON-LD pipeline used by LD-Signature verification (#1164 Phase D)。
|
Package ld provides a JSON-LD pipeline used by LD-Signature verification (#1164 Phase D)。 |
|
activitypub/mfm
Package mfm converts between MFM and the HTML of ActivityPub objects.
|
Package mfm converts between MFM and the HTML of ActivityPub objects. |
|
api/adminbackup
Package adminbackup serves the admin endpoints for the database backups (admin/backup/*, #3462).
|
Package adminbackup serves the admin endpoints for the database backups (admin/backup/*, #3462). |
|
api/antennas
Package antennas provides /api/antennas/* endpoints.
|
Package antennas provides /api/antennas/* endpoints. |
|
api/ap
Package ap provides ActivityPub resource endpoints for users and notes.
|
Package ap provides ActivityPub resource endpoints for users and notes. |
|
api/apierr
Package apierr provides Misskey-compatible error response helpers shared across all API handlers.
|
Package apierr provides Misskey-compatible error response helpers shared across all API handlers. |
|
api/avatardecorations
Package avatardecorations serves POST /api/get-avatar-decorations — the catalog of avatar decorations a user can put on their icon.
|
Package avatardecorations serves POST /api/get-avatar-decorations — the catalog of avatar decorations a user can put on their icon. |
|
api/blocking
Package blocking provides /api/blocking/* endpoints.
|
Package blocking provides /api/blocking/* endpoints. |
|
api/channels
Package channels provides /api/channels/* endpoints.
|
Package channels provides /api/channels/* endpoints. |
|
api/charts
Package charts provides the /api/charts/* and /api/charts/user/* endpoints.
|
Package charts provides the /api/charts/* and /api/charts/user/* endpoints. |
|
api/clips
Package clips provides /api/clips/* endpoints.
|
Package clips provides /api/clips/* endpoints. |
|
api/drive
Package drive provides /api/drive/* endpoints.
|
Package drive provides /api/drive/* endpoints. |
|
api/emojiapplications
Package emojiapplications exposes the applicant-facing half of custom emoji registration requests (#2934).
|
Package emojiapplications exposes the applicant-facing half of custom emoji registration requests (#2934). |
|
api/endpoints
Package endpoints serves the API catalog endpoints (`endpoints` / `endpoint`).
|
Package endpoints serves the API catalog endpoints (`endpoints` / `endpoint`). |
|
api/federation
Package federation provides /api/federation/* endpoints.
|
Package federation provides /api/federation/* endpoints. |
|
api/fetchexternal
Package fetchexternal implements POST /api/fetch-external-resources, an integrity-checked fetch of an external JSON resource ({type, data}).
|
Package fetchexternal implements POST /api/fetch-external-resources, an integrity-checked fetch of an external JSON resource ({type, data}). |
|
api/fetchrss
Package fetchrss implements the /api/fetch-rss endpoint, used by the RSS / RSSTicker widgets on the Misskey frontend.
|
Package fetchrss implements the /api/fetch-rss endpoint, used by the RSS / RSSTicker widgets on the Misskey frontend. |
|
api/flash
Package flash provides /api/flash/* endpoints.
|
Package flash provides /api/flash/* endpoints. |
|
api/following
Package following implements the following/* API endpoints.
|
Package following implements the following/* API endpoints. |
|
api/inbox
Package inbox provides the ActivityPub inbox endpoint.
|
Package inbox provides the ActivityPub inbox endpoint. |
|
api/invite
Package invite implements the user-scope /api/invite/* endpoints used by users who hold the canInvite role policy to issue / list / delete / inspect invite codes.
|
Package invite implements the user-scope /api/invite/* endpoints used by users who hold the canInvite role policy to issue / list / delete / inspect invite codes. |
|
api/jsnum
Package jsnum decodes JSON numbers the way upstream Misskey's ajv judges them.
|
Package jsnum decodes JSON numbers the way upstream Misskey's ajv judges them. |
|
api/meself
Package meself promotes a packed UserDetailed into MeDetailed when the target user is the viewer themselves.
|
Package meself promotes a packed UserDetailed into MeDetailed when the target user is the viewer themselves. |
|
api/mute
Package mute provides /api/mute/* endpoints.
|
Package mute provides /api/mute/* endpoints. |
|
api/nodeinfo
Package nodeinfo provides /nodeinfo/* endpoints.
|
Package nodeinfo provides /nodeinfo/* endpoints. |
|
api/notehide
Package notehide centralizes the per-viewer hideNote gate (#1536 / #1568) so EVERY REST endpoint that packs notes applies it uniformly, mirroring upstream Misskey's NoteEntityService.hideNote applied in pack().
|
Package notehide centralizes the per-viewer hideNote gate (#1536 / #1568) so EVERY REST endpoint that packs notes applies it uniformly, mirroring upstream Misskey's NoteEntityService.hideNote applied in pack(). |
|
api/notifications
Package notifications provides /api/notifications/* endpoints.
|
Package notifications provides /api/notifications/* endpoints. |
|
api/oauth
Package oauth implements the OAuth2 / IndieAuth authorization-code provider (authorize / decision / token) advertised by the RFC8414 discovery document, mirroring upstream Misskey's OAuth2ProviderService (#1899).
|
Package oauth implements the OAuth2 / IndieAuth authorization-code provider (authorize / decision / token) advertised by the RFC8414 discovery document, mirroring upstream Misskey's OAuth2ProviderService (#1899). |
|
api/openapi
Package openapi builds the OpenAPI document served at /api.json.
|
Package openapi builds the OpenAPI document served at /api.json. |
|
api/optional
Package optional provides a JSON wrapper that distinguishes an absent field from an explicit null, which Go's encoding/json cannot express with a plain pointer (both decode to nil).
|
Package optional provides a JSON wrapper that distinguishes an absent field from an explicit null, which Go's encoding/json cannot express with a plain pointer (both decode to nil). |
|
api/pages
Package pages provides /api/pages/* endpoints.
|
Package pages provides /api/pages/* endpoints. |
|
api/pagination
Package pagination provides shared helpers for Misskey-compatible list pagination params (limit / sinceId / untilId).
|
Package pagination provides shared helpers for Misskey-compatible list pagination params (limit / sinceId / untilId). |
|
api/paramschema
Package paramschema validates API parameters against upstream Misskey's paramDef the way upstream's ajv does (#3667, #3673).
|
Package paramschema validates API parameters against upstream Misskey's paramDef the way upstream's ajv does (#3667, #3673). |
|
api/paramschema/elythiajs
Package elythiajs renders the type checks that tie the paramDefs of Elythia's own endpoints (elythia_paramdefs.json, #3869) to the request types of elythia-js (frontend/packages/elythia-js/src/endpoints.ts).
|
Package elythiajs renders the type checks that tie the paramDefs of Elythia's own endpoints (elythia_paramdefs.json, #3869) to the request types of elythia-js (frontend/packages/elythia-js/src/endpoints.ts). |
|
api/pluginsecrets
Package pluginsecrets serves the control-panel endpoints for server plugins' secret values (#3470).
|
Package pluginsecrets serves the control-panel endpoints for server plugins' secret values (#3470). |
|
api/promo
Package promo serves POST /api/promo/read — marking a promoted note as read for the caller.
|
Package promo serves POST /api/promo/read — marking a promoted note as read for the caller. |
|
api/renotemute
Package renotemute provides /api/renote-mute/* endpoints.
|
Package renotemute provides /api/renote-mute/* endpoints. |
|
api/stats
Package stats serves POST /api/stats — the instance-wide counters shown on the about page and consumed by external instance listings.
|
Package stats serves POST /api/stats — the instance-wide counters shown on the about page and consumed by external instance listings. |
|
api/streaming
Package streaming provides the WebSocket /streaming endpoint that Misskey clients connect to for live timeline / notification updates.
|
Package streaming provides the WebSocket /streaming endpoint that Misskey clients connect to for live timeline / notification updates. |
|
api/test
Package test exposes test-only HTTP endpoints used by Cypress e2e against mk-go.
|
Package test exposes test-only HTTP endpoints used by Cypress e2e against mk-go. |
|
api/url
Package url provides the /api/url endpoint for URL preview.
|
Package url provides the /api/url endpoint for URL preview. |
|
api/userrelation
Package userrelation computes the viewer->target relation block shared by /api/users/show and /api/blocking/{create,delete}, mirroring upstream UserEntityService's pack(target, me) relation fields (isFollowing, isFollowed, isBlocking, isBlocked, isMuted, isRenoteMuted, hasPendingFollowRequest*, notify, withReplies, followedMessage, memo).
|
Package userrelation computes the viewer->target relation block shared by /api/users/show and /api/blocking/{create,delete}, mirroring upstream UserEntityService's pack(target, me) relation fields (isFollowing, isFollowed, isBlocking, isBlocked, isMuted, isRenoteMuted, hasPendingFollowRequest*, notify, withReplies, followedMessage, memo). |
|
api/wellknown
Package wellknown provides /.well-known/* discovery endpoints.
|
Package wellknown provides /.well-known/* discovery endpoints. |
|
backup
Package backup takes, verifies and restores database backups (#3457).
|
Package backup takes, verifies and restores database backups (#3457). |
|
backup/daemon
Package daemon runs `elythia backup daemon` (#3460): it takes, verifies and prunes backups on a schedule, reports failures, mismatches and delays, and serves a control API that the main server's admin page uses (#3462).
|
Package daemon runs `elythia backup daemon` (#3460): it takes, verifies and prunes backups on a schedule, reports failures, mismatches and delays, and serves a control API that the main server's admin page uses (#3462). |
|
backup/restoreop
Package restoreop runs a restore requested from the admin page (#3463 (6c)): it restores a generation into a new database while the server keeps running, puts every process into maintenance, swaps the database names, cleans Redis, checks the result and lets the processes resume.
|
Package restoreop runs a restore requested from the admin page (#3463 (6c)): it restores a generation into a new database while the server keeps running, puts every process into maintenance, swaps the database names, cleans Redis, checks the result and lets the processes resume. |
|
bgwork
Package bgwork tracks the fire-and-forget goroutines of one server generation, so stopping the generation can wait for them (and cancel them near the end of the wait) before the DB pool they use is closed (#3661).
|
Package bgwork tracks the fire-and-forget goroutines of one server generation, so stopping the generation can wait for them (and cancel them near the end of the wait) before the DB pool they use is closed (#3661). |
|
charttick
Package charttick provides TickFunc closures that re-derive absolute chart counters from the live PostgreSQL state.
|
Package charttick provides TickFunc closures that re-derive absolute chart counters from the live PostgreSQL state. |
|
cli
Package cli dispatches the subcommands of the elythia binary.
|
Package cli dispatches the subcommands of the elythia binary. |
|
cli/backfill
Package backfill implements "elythia backfill <name>", the one-off maintenance batches that rewrite rows stored by older builds.
|
Package backfill implements "elythia backfill <name>", the one-off maintenance batches that rewrite rows stored by older builds. |
|
cli/backup
Package backup implements "elythia backup", which takes database backups into storage outside the host, lists them, verifies that they can be restored and restores them (#3457).
|
Package backup implements "elythia backup", which takes database backups into storage outside the host, lists them, verifies that they can be restored and restores them (#3457). |
|
cli/cliflag
Package cliflag holds the flag handling shared by the elythia subcommands.
|
Package cliflag holds the flag handling shared by the elythia subcommands. |
|
cli/diag
Package diag implements the elythia subcommands that inspect an instance without starting the server: doctor, fsck, config-dump and healthcheck.
|
Package diag implements the elythia subcommands that inspect an instance without starting the server: doctor, fsck, config-dump and healthcheck. |
|
cli/maintenance
Package maintenance implements "elythia maintenance", which puts every Elythia process into maintenance mode and brings them back by writing the state in Redis (#3463).
|
Package maintenance implements "elythia maintenance", which puts every Elythia process into maintenance mode and brings them back by writing the state in Redis (#3463). |
|
cli/migrate
Package migrate implements "elythia migrate", which applies or rolls back the SQL migrations under migration/ (the core track) and, for forks, migration/local/ (the local track, #3428).
|
Package migrate implements "elythia migrate", which applies or rolls back the SQL migrations under migration/ (the core track) and, for forks, migration/local/ (the local track, #3428). |
|
cli/serve
Package serve implements "elythia serve", which runs the server, and "elythia dump-routes", which builds the same server and prints its routes without listening.
|
Package serve implements "elythia serve", which runs the server, and "elythia dump-routes", which builds the same server and prints its routes without listening. |
|
core/abuse
Package abuse implements the side effects of abuse reports: Forwarder handles the "notify the remote origin of a reported user" flow triggered by admin/forward-abuse-user-report, and InAppNotifier leaves new reports in the moderators' notification list.
|
Package abuse implements the side effects of abuse reports: Forwarder handles the "notify the remote origin of a reported user" flow triggered by admin/forward-abuse-user-report, and InAppNotifier leaves new reports in the moderators' notification list. |
|
core/achievement
Package achievement provides server-side granting of user achievements, mirroring Misskey's AchievementService.
|
Package achievement provides server-side granting of user achievements, mirroring Misskey's AchievementService. |
|
core/announcement
Package announcement provides a thin creation service that persists an announcement and emits the realtime `announcementCreated` main-stream event, mirroring upstream AnnouncementService.create (#1606).
|
Package announcement provides a thin creation service that persists an announcement and emits the realtime `announcementCreated` main-stream event, mirroring upstream AnnouncementService.create (#1606). |
|
core/antenna
Package antenna provides the user-facing antenna CRUD service plus a per-antenna Redis ZSET timeline of matching notes (#2465 で Stream から移行).
|
Package antenna provides the user-facing antenna CRUD service plus a per-antenna Redis ZSET timeline of matching notes (#2465 で Stream から移行). |
|
core/avatardecoration
Package avatardecoration provides a cached id->url resolver used by (*entity.Packer).PackUserLite to embed `url` on each avatarDecorations entry.
|
Package avatardecoration provides a cached id->url resolver used by (*entity.Packer).PackUserLite to embed `url` on each avatarDecorations entry. |
|
core/backupadmin
Package backupadmin is what the main server does with the database backups for the admin page (#3462): list the generations and the storage usage, delete a generation, hand out a download, and ask the backup service to take or verify a backup.
|
Package backupadmin is what the main server does with the database backups for the admin page (#3462): list the generations and the storage usage, delete a generation, hand out a download, and ask the backup service to take or verify a backup. |
|
core/blocking
Package blocking provides UserBlockingService for managing user blocks.
|
Package blocking provides UserBlockingService for managing user blocks. |
|
core/bubbleversus
Package bubbleversus runs 1:1 versus matches of the bubble game between local users (#3230).
|
Package bubbleversus runs 1:1 versus matches of the bubble game between local users (#3230). |
|
core/cachebus
Package cachebus carries in-process cache invalidations between processes over the internal pub/sub (#3664).
|
Package cachebus carries in-process cache invalidations between processes over the internal pub/sub (#3664). |
|
core/captcha
Package captcha provides pluggable CAPTCHA verification for signup and signin flows.
|
Package captcha provides pluggable CAPTCHA verification for signup and signin flows. |
|
core/channel
Package channel provides the user-facing channel CRUD, follow, and timeline services.
|
Package channel provides the user-facing channel CRUD, follow, and timeline services. |
|
core/chart
Package chart implements the Misskey-compatible chart engine that aggregates time-series statistics into per-hour and per-day buckets.
|
Package chart implements the Misskey-compatible chart engine that aggregates time-series statistics into per-hour and per-day buckets. |
|
core/chart/charthook
Package charthook adapts the chart wrappers in internal/core/chart/charts to the per-service ChartHook interfaces declared by NoteCreateService, FollowingService, ReactionService, DriveService and the federation resolver / deliver service / inbox handler.
|
Package charthook adapts the chart wrappers in internal/core/chart/charts to the per-service ChartHook interfaces declared by NoteCreateService, FollowingService, ReactionService, DriveService and the federation resolver / deliver service / inbox handler. |
|
core/chart/charts
Package charts hosts the concrete chart definitions wired on top of the generic chart engine in internal/core/chart.
|
Package charts hosts the concrete chart definitions wired on top of the generic chart engine in internal/core/chart. |
|
core/chat
Package chat provides a thin service layer over ChatRepository that dispatches real-time delivery events to the matching WebSocket channel.
|
Package chat provides a thin service layer over ChatRepository that dispatches real-time delivery events to the matching WebSocket channel. |
|
core/clip
Package clip provides the user-facing clip CRUD service plus add/remove note operations.
|
Package clip provides the user-facing clip CRUD service plus add/remove note operations. |
|
core/dbhealth
Package dbhealth reads PostgreSQL's own statistics to show the database's health (#3095): indexes that are never used, dead tuples and when tables were last vacuumed / analyzed.
|
Package dbhealth reads PostgreSQL's own statistics to show the database's health (#3095): indexes that are never used, dead tuples and when tables were last vacuumed / analyzed. |
|
core/deliveryhealth
Package deliveryhealth records per-host ActivityPub delivery outcomes so operators can see *why* federation to a host is degraded, not just whether it is up.
|
Package deliveryhealth records per-host ActivityPub delivery outcomes so operators can see *why* federation to a host is degraded, not just whether it is up. |
|
core/drive
Package drive provides DriveService for managing user-uploaded files.
|
Package drive provides DriveService for managing user-uploaded files. |
|
core/driveusage
Package driveusage aggregates instance-wide drive storage usage for the admin API (#3053).
|
Package driveusage aggregates instance-wide drive storage usage for the admin API (#3053). |
|
core/email
Package email provides pluggable email validation for signup and update-email flows.
|
Package email provides pluggable email validation for signup and update-email flows. |
|
core/emojiapplication
Package emojiapplication implements the lifecycle of custom emoji registration requests (#2934).
|
Package emojiapplication implements the lifecycle of custom emoji registration requests (#2934). |
|
core/emojiimport
Package emojiimport implements the Misskey-compatible "admin/emoji/ import-zip" flow: read a previously-uploaded ZIP from Drive, extract each emoji image + meta.json, and register them as local custom emojis.
|
Package emojiimport implements the Misskey-compatible "admin/emoji/ import-zip" flow: read a previously-uploaded ZIP from Drive, extract each emoji image + meta.json, and register them as local custom emojis. |
|
core/emojimeta
Package emojimeta fetches custom emoji metadata from the origin server.
|
Package emojimeta fetches custom emoji metadata from the origin server. |
|
core/ephemeral
Package ephemeral keeps relay-delivered notes and their authors in Redis instead of the database.
|
Package ephemeral keeps relay-delivered notes and their authors in Redis instead of the database. |
|
core/featured
Package featured implements the engagement ranking used by notes/featured, users/featured-notes and channel featured.
|
Package featured implements the engagement ranking used by notes/featured, users/featured-notes and channel featured. |
|
core/federation
Package federation provides services for processing inbound and outbound ActivityPub traffic.
|
Package federation provides services for processing inbound and outbound ActivityPub traffic. |
|
core/fedrule
Package fedrule applies the admin-defined federation rules (#3090) to inbound activities and notes.
|
Package fedrule applies the admin-defined federation rules (#3090) to inbound activities and notes. |
|
core/flash
Package flash provides the user-facing Flash (Misskey Play) CRUD service plus Like / Unlike, Featured / Search and listing helpers.
|
Package flash provides the user-facing Flash (Misskey Play) CRUD service plus Like / Unlike, Featured / Search and listing helpers. |
|
core/following
Package following provides the UserFollowingService for managing follow relationships and follow requests.
|
Package following provides the UserFollowingService for managing follow relationships and follow requests. |
|
core/fsck
Package fsck reports and repairs drift between denormalized counters and the rows they summarise.
|
Package fsck reports and repairs drift between denormalized counters and the rows they summarise. |
|
core/gonecleanup
Package gonecleanup removes the follow relations left with instances that became goneSuspended (#3067).
|
Package gonecleanup removes the follow relations left with instances that became goneSuspended (#3067). |
|
core/hashtag
Package hashtag implements the HashtagService.updateHashtag equivalent of Misskey TS — maintaining the per-tag mentionedUsersCount / userIds arrays so /api/hashtags/list ranking and /show counts work (#680)。
|
Package hashtag implements the HashtagService.updateHashtag equivalent of Misskey TS — maintaining the per-tag mentionedUsersCount / userIds arrays so /api/hashtags/list ranking and /show counts work (#680)。 |
|
core/instance
Package instance provides services for managing remote ActivityPub instances and their lifecycle metadata.
|
Package instance provides services for managing remote ActivityPub instances and their lifecycle metadata. |
|
core/iplog
Package iplog records which IP addresses an authenticated account was seen from (#3103).
|
Package iplog records which IP addresses an authenticated account was seen from (#3103). |
|
core/iplookuplog
Package iplookuplog records who looked up which IP, and when (#3106、親 #3066).
|
Package iplookuplog records who looked up which IP, and when (#3106、親 #3066). |
|
core/iprelation
Package iprelation ranks accounts that shared IP addresses with a target account (#3105, 親 #3066).
|
Package iprelation ranks accounts that shared IP addresses with a target account (#3105, 親 #3066). |
|
core/moderationlog
Package moderationlog provides a fire-and-forget audit log writer for administrator actions.
|
Package moderationlog provides a fire-and-forget audit log writer for administrator actions. |
|
core/moderatoractivity
Package moderatoractivity implements the upstream CheckModeratorsActivityProcessorService (#1563): it detects when every moderator has been inactive past a threshold and, if so, flips the instance to invitation-only (disableRegistration=true), warning moderators by email / announcement / SystemWebhook as the deadline approaches.
|
Package moderatoractivity implements the upstream CheckModeratorsActivityProcessorService (#1563): it detects when every moderator has been inactive past a threshold and, if so, flips the instance to invitation-only (disableRegistration=true), warning moderators by email / announcement / SystemWebhook as the deadline approaches. |
|
core/move
Package move implements i/move (account migration) business logic: destination URI resolution via the federation Resolver, alsoKnownAs verification, local user row updates (movedToUri/movedAt/alsoKnownAs), and Move activity delivery to follower inboxes.
|
Package move implements i/move (account migration) business logic: destination URI resolution via the federation Resolver, alsoKnownAs verification, local user row updates (movedToUri/movedAt/alsoKnownAs), and Move activity delivery to follower inboxes. |
|
core/muting
Package muting provides UserMutingService and RenoteMutingService.
|
Package muting provides UserMutingService and RenoteMutingService. |
|
core/note
Package note provides core business logic services for notes.
|
Package note provides core business logic services for notes. |
|
core/notesfilter
Package notesfilter centralises pre-pack filtering steps applied to a []*model.Note before serialization.
|
Package notesfilter centralises pre-pack filtering steps applied to a []*model.Note before serialization. |
|
core/notification
Package notification provides NotificationService for delivering and reading per-user notifications backed by Redis Streams.
|
Package notification provides NotificationService for delivering and reading per-user notifications backed by Redis Streams. |
|
core/page
Package page provides the user-facing Page CRUD service plus Like / Unlike and featured listing operations.
|
Package page provides the user-facing Page CRUD service plus Like / Unlike and featured listing operations. |
|
core/passwordguard
Package passwordguard limits how often a signed-in account's current password can be checked and found wrong.
|
Package passwordguard limits how often a signed-in account's current password can be checked and found wrong. |
|
core/pluginaccount
Package pluginaccount manages the local accounts that plugins own (#3468).
|
Package pluginaccount manages the local accounts that plugins own (#3468). |
|
core/pluginnotify
Package pluginnotify hands notifications addressed to plugin-managed accounts to the plugin that manages them (#3469).
|
Package pluginnotify hands notifications addressed to plugin-managed accounts to the plugin that manages them (#3469). |
|
core/pluginsecret
Package pluginsecret stores server plugins' secret values encrypted at rest (#3470).
|
Package pluginsecret stores server plugins' secret values encrypted at rest (#3470). |
|
core/pluginsecret/pgrepo
Package pgrepo stores plugin secrets in PostgreSQL through repository.PluginSecretRepository (#3470).
|
Package pgrepo stores plugin secrets in PostgreSQL through repository.PluginSecretRepository (#3470). |
|
core/poll
Package poll provides PollService for casting votes on note polls.
|
Package poll provides PollService for casting votes on note polls. |
|
core/procstats
Package procstats collects live statistics about the running mk-go process (Go runtime counters and uptime).
|
Package procstats collects live statistics about the running mk-go process (Go runtime counters and uptime). |
|
core/reaction
Package reaction provides ReactionService for managing note reactions.
|
Package reaction provides ReactionService for managing note reactions. |
|
core/relationcache
Package relationcache carries repository.RelationCache invalidations between processes over the internal pub/sub (#3607).
|
Package relationcache carries repository.RelationCache invalidations between processes over the internal pub/sub (#3607). |
|
core/relay
Package relay implements the ActivityPub relay subscription protocol.
|
Package relay implements the ActivityPub relay subscription protocol. |
|
core/remotecheck
Package remotecheck actively diagnoses federation with one remote host (#3055): whether WebFinger, nodeinfo, the actor and the inbox are reachable, whether our signed fetches are accepted, and what we have observed about the host's signature support and our deliveries to it.
|
Package remotecheck actively diagnoses federation with one remote host (#3055): whether WebFinger, nodeinfo, the actor and the inbox are reachable, whether our signed fetches are accepted, and what we have observed about the host's signature support and our deliveries to it. |
|
core/retention
Package retention runs the daily retention aggregation that backs /api/retention and the admin overview「定着率」heatmap (#421)。
|
Package retention runs the daily retention aggregation that backs /api/retention and the admin overview「定着率」heatmap (#421)。 |
|
core/reversi
Package reversi implements the Misskey reversi (Othello) game logic.
|
Package reversi implements the Misskey reversi (Othello) game logic. |
|
core/search
Package search provides a backend-agnostic search service for notes.
|
Package search provides a backend-agnostic search service for notes. |
|
core/selfcheck
Package selfcheck verifies that this instance looks correct **from the outside**, and that its local dependencies are healthy.
|
Package selfcheck verifies that this instance looks correct **from the outside**, and that its local dependencies are healthy. |
|
core/serverstats
Package serverstats provides server machine statistics (CPU, memory, disk, OS, network) for the /api/admin/server-info endpoint.
|
Package serverstats provides server machine statistics (CPU, memory, disk, OS, network) for the /api/admin/server-info endpoint. |
|
core/signupapplication
Package signupapplication implements the state machine behind approval-based registration (#2554 / #2555).
|
Package signupapplication implements the state machine behind approval-based registration (#2554 / #2555). |
|
core/signupform
Package signupform issues and verifies the signed form tokens that guard the approval-based signup endpoints when no captcha provider is configured (#2806).
|
Package signupform issues and verifies the signed form tokens that guard the approval-based signup endpoints when no captcha provider is configured (#2806). |
|
core/strongauth
Package strongauth checks the strong authentication that guards the most sensitive administrator operations, such as the database backups (#3462).
|
Package strongauth checks the strong authentication that guards the most sensitive administrator operations, such as the database backups (#3462). |
|
core/systemaccount
Package systemaccount manages built-in local users that represent subsystems of the instance itself (relay actor, instance actor, proxy fetcher etc).
|
Package systemaccount manages built-in local users that represent subsystems of the instance itself (relay actor, instance actor, proxy fetcher etc). |
|
core/timeline
Package timeline provides Redis-backed timeline services.
|
Package timeline provides Redis-backed timeline services. |
|
core/transfer
Package transfer implements user data export/import in Misskey-compatible formats.
|
Package transfer implements user data export/import in Misskey-compatible formats. |
|
core/translate
Package translate provides note translation via external APIs.
|
Package translate provides note translation via external APIs. |
|
core/twofactor
Package twofactor provides TOTP-based two-factor authentication.
|
Package twofactor provides TOTP-based two-factor authentication. |
|
core/ugcvisibility
Package ugcvisibility implements meta.ugcVisibilityForVisitor, the policy that limits which user-generated content anonymous visitors can read.
|
Package ugcvisibility implements meta.ugcVisibilityForVisitor, the policy that limits which user-generated content anonymous visitors can read. |
|
core/urlpreview
Package urlpreview fetches and parses URL metadata (OGP, Twitter card) for link preview cards.
|
Package urlpreview fetches and parses URL metadata (OGP, Twitter card) for link preview cards. |
|
core/user
Package user provides core business logic services for users.
|
Package user provides core business logic services for users. |
|
core/userlist
Package userlist provides side-effect helpers for user list membership changes (#1704).
|
Package userlist provides side-effect helpers for user list membership changes (#1704). |
|
core/userpack
Package userpack packs a user the way upstream UserEntityService.pack does for server-originated events (main stream follow / unfollow / followed and the matching user webhooks), where no API handler is in the call path.
|
Package userpack packs a user the way upstream UserEntityService.pack does for server-originated events (main stream follow / unfollow / followed and the matching user webhooks), where no API handler is in the call path. |
|
core/webhook
Package webhook implements user and system webhook delivery dispatch.
|
Package webhook implements user and system webhook delivery dispatch. |
|
core/webpush
Package webpush implements Misskey-compatible Web Push delivery.
|
Package webpush implements Misskey-compatible Web Push delivery. |
|
core/wordmute
Package wordmute implements Misskey's word-mute matcher (`checkWordMute`) for hard mute filtering on the server side (#787).
|
Package wordmute implements Misskey's word-mute matcher (`checkWordMute`) for hard mute filtering on the server side (#787). |
|
db
Package db wires the GORM PostgreSQL connection used by the rest of the application.
|
Package db wires the GORM PostgreSQL connection used by the rest of the application. |
|
db/pgstat
Package pgstat makes pg_stat_statements usable by adding it to the PostgreSQL configuration only (#3909): when the server preloads the library, Elythia creates the extension in its database when it opens the database.
|
Package pgstat makes pg_stat_statements usable by adding it to the PostgreSQL configuration only (#3909): when the server preloads the library, Elythia creates the extension in its database when it opens the database. |
|
effectivepolicy
Package effectivepolicy contains the host schema shared by production policy resolution and plugin authoring tests.
|
Package effectivepolicy contains the host schema shared by production policy resolution and plugin authoring tests. |
|
entity
Package entity: Following response shape (Misskey TS FollowingEntityService 互換)。
|
Package entity: Following response shape (Misskey TS FollowingEntityService 互換)。 |
|
entitycompat
Package entitycompat provides a static "Layer 0" API shape drift detector.
|
Package entitycompat provides a static "Layer 0" API shape drift detector. |
|
entitycompat/ipbearingfixture
Package ipbearingfixture holds artificial types used to pin the "which types carry an IP" scanner in internal/entitycompat.
|
Package ipbearingfixture holds artificial types used to pin the "which types carry an IP" scanner in internal/entitycompat. |
|
entitycompat/ipscanfixture
Package ipscanfixture holds artificial shapes used to pin the JSON key collector in internal/entitycompat.
|
Package ipscanfixture holds artificial shapes used to pin the JSON key collector in internal/entitycompat. |
|
entitycompat/marshalerfixture
Package marshalerfixture holds artificial types that implement their own JSON or text marshaler.
|
Package marshalerfixture holds artificial types that implement their own JSON or text marshaler. |
|
entitycompat/recordfixture
Package recordfixture holds artificial call sites used to pin the IP-record scanner in internal/entitycompat.
|
Package recordfixture holds artificial call sites used to pin the IP-record scanner in internal/entitycompat. |
|
entitycompat/shapetest
Package shapetest provides test helpers to assert that an actual API response matches the golden contract (the "Layer 3" runtime response check).
|
Package shapetest provides test helpers to assert that an actual API response matches the golden contract (the "Layer 3" runtime response check). |
|
entitycompat/sqlbindfixture
Package sqlbindfixture holds artificial format strings used to pin the scanner in internal/entitycompat.
|
Package sqlbindfixture holds artificial format strings used to pin the scanner in internal/entitycompat. |
|
l10n
Package l10n resolves locale tags for outbound email copy.
|
Package l10n resolves locale tags for outbound email copy. |
|
maintenance
Package maintenance holds app-level batch jobs that cannot be expressed as pure SQL migrations (e.g.
|
Package maintenance holds app-level batch jobs that cannot be expressed as pure SQL migrations (e.g. |
|
maintmode
Package maintmode holds the maintenance mode shared by every Elythia process: the state kept in Redis, the per-process reports, the judge that decides from pg_stat_activity that the database has been let go, and the HTTP handler that answers meanwhile (#3463).
|
Package maintmode holds the maintenance mode shared by every Elythia process: the state kept in Redis, the per-process reports, the judge that decides from pg_stat_activity that the database has been let go, and the HTTP handler that answers meanwhile (#3463). |
|
metasecret
Package metasecret lists the meta columns that hold credentials of external services and masks their values (admin/meta, the moderation log).
|
Package metasecret lists the meta columns that hold credentials of external services and masks their values (admin/meta, the moderation log). |
|
misc/achievement
Package achievement holds the canonical set of achievement type names, mirroring Misskey's ACHIEVEMENT_TYPES (packages/backend/src/models/UserProfile.ts).
|
Package achievement holds the canonical set of achievement type names, mirroring Misskey's ACHIEVEMENT_TYPES (packages/backend/src/models/UserProfile.ts). |
|
misc/colfit
Package colfit holds the primitives for fitting a remote-supplied string into a PostgreSQL varchar column.
|
Package colfit holds the primitives for fitting a remote-supplied string into a PostgreSQL varchar column. |
|
misc/credkey
Package credkey derives the opaque key that identifies which credential a streaming connection was authenticated with.
|
Package credkey derives the opaque key that identifies which credential a streaming connection was authenticated with. |
|
misc/csscolor
Package csscolor parses CSS color strings the way tinycolor2 does.
|
Package csscolor parses CSS color strings the way tinycolor2 does. |
|
misc/hashtag
Package hashtag provides hashtag extraction from note text.
|
Package hashtag provides hashtag extraction from note text. |
|
misc/headreq
Package headreq lets handlers tell a HEAD request apart after the server has routed it to a GET route and presents it to them as GET (#3925).
|
Package headreq lets handlers tell a HEAD request apart after the server has routed it to a GET route and presents it to them as GET (#3925). |
|
misc/htmltext
Package htmltext converts HTML descriptions into plain text the way upstream Misskey's misc/html-to-plain-text.ts does (2026.10.1).
|
Package htmltext converts HTML descriptions into plain text the way upstream Misskey's misc/html-to-plain-text.ts does (2026.10.1). |
|
misc/idnhost
Package idnhost normalizes host names for comparison against stored values.
|
Package idnhost normalizes host names for comparison against stored values. |
|
misc/imagedecode
Package imagedecode centralises the image decoding rules shared by the media proxy and the drive image processor.
|
Package imagedecode centralises the image decoding rules shared by the media proxy and the drive image processor. |
|
misc/ipnorm
Package ipnorm canonicalizes remote IP strings before they are stored or searched (#3103).
|
Package ipnorm canonicalizes remote IP strings before they are stored or searched (#3103). |
|
misc/jsdate
Package jsdate reproduces the range of a JavaScript Date, where upstream Misskey turns a millisecond value into a Date.
|
Package jsdate reproduces the range of a JavaScript Date, where upstream Misskey turns a millisecond value into a Date. |
|
misc/json5
Package json5 converts JSON5 documents into plain JSON.
|
Package json5 converts JSON5 documents into plain JSON. |
|
misc/jsstr
Package jsstr reproduces JavaScript's handling of whitespace in strings, where upstream Misskey's behavior depends on it.
|
Package jsstr reproduces JavaScript's handling of whitespace in strings, where upstream Misskey's behavior depends on it. |
|
misc/keyword
Package keyword provides upstream Misskey TS compatible keyword matching used by meta.sensitiveWords / meta.prohibitedWords / role wordmute / featured hashtag filters etc.
|
Package keyword provides upstream Misskey TS compatible keyword matching used by meta.sensitiveWords / meta.prohibitedWords / role wordmute / featured hashtag filters etc. |
|
misc/langmap
Package langmap mirrors upstream Misskey's langmap key set (packages/backend/src/misc/langmap.ts), used to validate the i/update `lang` parameter against the same enum the upstream paramDef enforces (#1918).
|
Package langmap mirrors upstream Misskey's langmap key set (packages/backend/src/misc/langmap.ts), used to validate the i/update `lang` parameter against the same enum the upstream paramDef enforces (#1918). |
|
misc/notesummary
Package notesummary produces a compact text summary of a packed note, mirroring Misskey's get-note-summary.ts.
|
Package notesummary produces a compact text summary of a packed note, mirroring Misskey's get-note-summary.ts. |
|
misc/password
Package password centralises how mk-go hashes account passwords.
|
Package password centralises how mk-go hashes account passwords. |
|
misc/permissions
Package permissions defines the canonical set of OAuth / app permission "kinds" (scopes), mirroring upstream misskey-js `permissions` (packages/misskey-js/src/consts.ts).
|
Package permissions defines the canonical set of OAuth / app permission "kinds" (scopes), mirroring upstream misskey-js `permissions` (packages/misskey-js/src/consts.ts). |
|
misc/reactionlegacy
Package reactionlegacy holds the frozen legacy text-reaction alias table shared by the reaction service (core/reaction) and the note entity packer (internal/entity).
|
Package reactionlegacy holds the frozen legacy text-reaction alias table shared by the reaction service (core/reaction) and the note entity packer (internal/entity). |
|
misc/redact
Package redact removes credentials from strings that leave the process, such as access log lines and error-reporting payloads.
|
Package redact removes credentials from strings that leave the process, such as access log lines and error-reporting payloads. |
|
misc/redisglob
Package redisglob escapes literals for Redis glob patterns (SCAN MATCH, PSUBSCRIBE).
|
Package redisglob escapes literals for Redis glob patterns (SCAN MATCH, PSUBSCRIBE). |
|
misc/remoteurl
Package remoteurl checks the form of media URLs that a remote server chose, such as the avatar and banner of a remote user.
|
Package remoteurl checks the form of media URLs that a remote server chose, such as the avatar and banner of a remote user. |
|
misc/searchnorm
Package searchnorm normalizes strings for case- and width-insensitive search/index keys, mirroring Misskey's misc/normalize-for-search.ts (`tag.normalize('NFKC').toLowerCase()`).
|
Package searchnorm normalizes strings for case- and width-insensitive search/index keys, mirroring Misskey's misc/normalize-for-search.ts (`tag.normalize('NFKC').toLowerCase()`). |
|
misc/semverrange
Package semverrange reports whether a version satisfies a version range, with the same results as npm's semver package.
|
Package semverrange reports whether a version satisfies a version range, with the same results as npm's semver package. |
|
misc/smtp
Package smtp provides a best-effort SMTP email sender shared by admin and i handler packages.
|
Package smtp provides a best-effort SMTP email sender shared by admin and i handler packages. |
|
pgactivity
Package pgactivity lists and terminates the sessions connected to a PostgreSQL database, as seen in pg_stat_activity.
|
Package pgactivity lists and terminates the sessions connected to a PostgreSQL database, as seen in pg_stat_activity. |
|
pluginspec
Package pluginspec extracts the exported surface of the plugin/ package.
|
Package pluginspec extracts the exported surface of the plugin/ package. |
|
pluginstore
Package pluginstore gives each plugin its own PostgreSQL schema (#2481).
|
Package pluginstore gives each plugin its own PostgreSQL schema (#2481). |
|
queue
Package queue is the driver-neutral facade for mk-go's job queue.
|
Package queue is the driver-neutral facade for mk-go's job queue. |
|
queue/autoscale
Package autoscale implements the dynamic worker pool sizing logic for mk-go's job queue (see docs/design/auto-scale-job-workers.md).
|
Package autoscale implements the dynamic worker pool sizing logic for mk-go's job queue (see docs/design/auto-scale-job-workers.md). |
|
queue/driver
Package driver defines the queue driver abstraction.
|
Package driver defines the queue driver abstraction. |
|
queue/driver/mkqdriver
Package mkqdriver implements queue/driver against mkq (github.com/elythia-network/mkq), a BullMQ-compatible Go-native job queue.
|
Package mkqdriver implements queue/driver against mkq (github.com/elythia-network/mkq), a BullMQ-compatible Go-native job queue. |
|
queue/metrics
Package metrics exposes Prometheus metrics for the job queue subsystem.
|
Package metrics exposes Prometheus metrics for the job queue subsystem. |
|
queue/processors
Package processors contains task handlers used by the queue worker.
|
Package processors contains task handlers used by the queue worker. |
|
queue/runtimestats
Package runtimestats keeps a short in-memory history of job queue runtime behaviour so the admin UI can show what the auto-scale controller and the workers are actually doing.
|
Package runtimestats keeps a short in-memory history of job queue runtime behaviour so the admin UI can show what the auto-scale controller and the workers are actually doing. |
|
redislog
Package redislog routes go-redis' internal messages into slog.
|
Package redislog routes go-redis' internal messages into slog. |
|
safehttp
Package safehttp provides shared HTTP helpers used across outbound fetchers (ActivityPub, WebFinger, URL preview, media proxy).
|
Package safehttp provides shared HTTP helpers used across outbound fetchers (ActivityPub, WebFinger, URL preview, media proxy). |
|
safemath
Package safemath provides saturating arithmetic and conversion helpers for values crossing fixed-width representation boundaries.
|
Package safemath provides saturating arithmetic and conversion helpers for values crossing fixed-width representation boundaries. |
|
sentry
Package sentry wires the getsentry/sentry-go client to the Misskey configuration and exposes a thin Echo middleware that captures panics and handler errors.
|
Package sentry wires the getsentry/sentry-go client to the Misskey configuration and exposes a thin Echo middleware that captures panics and handler errors. |
|
server/paramshadow
Package paramshadow runs upstream's paramDef validation (internal/api/ paramschema) in front of the API handlers.
|
Package paramshadow runs upstream's paramDef validation (internal/api/ paramschema) in front of the API handlers. |
|
stream
Package stream implements the per-connection state for the WebSocket streaming endpoint and the Manager that distributes pubsub messages to connected clients.
|
Package stream implements the per-connection state for the WebSocket streaming endpoint and the Manager that distributes pubsub messages to connected clients. |
|
stream/channels
Package channels contains the per-name Channel implementations registered with stream.Registry.
|
Package channels contains the per-name Channel implementations registered with stream.Registry. |
|
upstreamsrc
Package upstreamsrc locates the pristine upstream Misskey checkout that the parity tools and tests compare against (#3378).
|
Package upstreamsrc locates the pristine upstream Misskey checkout that the parity tools and tests compare against (#3378). |
|
Package plugin is the public API for mk-go server plugins.
|
Package plugin is the public API for mk-go server plugins. |
|
imagedecode
Package imagedecode exposes the server's image decoding limits to plugins.
|
Package imagedecode exposes the server's image decoding limits to plugins. |
|
peercache
Package peercache caches data fetched from other instances so a plugin can answer a view-time read without waiting for the network.
|
Package peercache caches data fetched from other instances so a plugin can answer a view-time read without waiting for the network. |
|
plugintest
Package plugintest provides fakes for testing mk-go plugins.
|
Package plugintest provides fakes for testing mk-go plugins. |
|
tests
|
|
|
bench/queue/blackhole
command
Package main is a minimal HTTP black-hole receiver used by the queue bench (#563) to absorb deliver/inbox POST traffic without doing any work.
|
Package main is a minimal HTTP black-hole receiver used by the queue bench (#563) to absorb deliver/inbox POST traffic without doing any work. |
|
bench/queue/deliveryreceiver
command
|
|
|
bench/queue/faker
command
Package main implements a controllable AP HTTP-signature sender used by the queue bench (#563) to drive receiver inbox throughput measurements.
|
Package main implements a controllable AP HTTP-signature sender used by the queue bench (#563) to drive receiver inbox throughput measurements. |
|
tools
|
|
|
apicompat
command
Command apicompat compares mk-go's HTTP route surface against the Misskey TS endpoint set and emits a markdown compatibility matrix.
|
Command apicompat compares mk-go's HTTP route surface against the Misskey TS endpoint set and emits a markdown compatibility matrix. |
|
benchcompare
command
Command benchcompare compares the k6 results and resource usage of two commits measured in alternating rounds on the same stack (#3542).
|
Command benchcompare compares the k6 results and resource usage of two commits measured in alternating rounds on the same stack (#3542). |
|
elythiajsparamdefs
command
Command elythiajsparamdefs writes the type checks that tie the paramDefs of Elythia's own endpoints (internal/api/paramschema/elythia_paramdefs.json) to the request types of elythia-js.
|
Command elythiajsparamdefs writes the type checks that tie the paramDefs of Elythia's own endpoints (internal/api/paramschema/elythia_paramdefs.json) to the request types of elythia-js. |
|
emojiregex
command
Command emojiregex checks that the server and the frontend read the same Unicode emoji in MFM.
|
Command emojiregex checks that the server and the frontend read the same Unicode emoji in MFM. |
|
erroriddiff
command
Command erroriddiff regenerates the golden per-endpoint error-id snapshot used by the entitycompat error-id drift gate (TestErrorIDDrift).
|
Command erroriddiff regenerates the golden per-endpoint error-id snapshot used by the entitycompat error-id drift gate (TestErrorIDDrift). |
|
paginationspec
command
Command paginationspec regenerates the golden per-endpoint pagination cursor form of upstream Misskey (#3369).
|
Command paginationspec regenerates the golden per-endpoint pagination cursor form of upstream Misskey (#3369). |
|
pluginbuild
command
Command pluginbuild discovers plugins under plugins/ and generates the files that compile them into mk-go (#2480).
|
Command pluginbuild discovers plugins under plugins/ and generates the files that compile them into mk-go (#2480). |
|
plugindev
command
Command plugindev runs mk-go for plugin development (#2477).
|
Command plugindev runs mk-go for plugin development (#2477). |
|
pluginresolve
command
Command pluginresolve clones the plugins named in a build request into plugins/<name>/ so that pluginbuild can pick them up.
|
Command pluginresolve clones the plugins named in a build request into plugins/<name>/ so that pluginbuild can pick them up. |
|
pluginspec
command
Command pluginspec regenerates the golden snapshot of plugin/'s exported surface, used by the drift gate (TestPluginSurfaceDrift).
|
Command pluginspec regenerates the golden snapshot of plugin/'s exported surface, used by the drift gate (TestPluginSurfaceDrift). |
|
schemadrift
command
Command schemadrift regenerates the golden snapshot of Misskey TS table columns used by the schema drift gate in internal/entitycompat.
|
Command schemadrift regenerates the golden snapshot of Misskey TS table columns used by the schema drift gate in internal/entitycompat. |
|
shapediff
command
Command shapediff regenerates the golden API-contract snapshot used by the entitycompat drift gate, and (with -report) prints a full drift report.
|
Command shapediff regenerates the golden API-contract snapshot used by the entitycompat drift gate, and (with -report) prints a full drift report. |
|
upstreamsync
command
Command upstreamsync applies the frontend part of an upstream Misskey release diff to frontend/ (design D4 in docs/design/project-restructure.md, #3379).
|
Command upstreamsync applies the frontend part of an upstream Misskey release diff to frontend/ (design D4 in docs/design/project-restructure.md, #3379). |
Click to show internal directories.
Click to hide internal directories.