ACTIVITYPUB(7) | Miscellaneous Information Manual | ACTIVITYPUB(7)

# NAME

`activitypub` — notes about the honk implementation

# DESCRIPTION

The honk(1) utility processes status updates and other microblog activities using the `ActivityPub` protocol to exchange messages with other servers. The specification is subject to interpretation, and not all implementations behave in the same way. This document attempts to clarify honk's behavior. It is not intended to be a complete description of `ActivityPub`, but may be useful as a guide to other implementors looking to interoperate.

## OBJECTS

The following object or document types are supported.

Note
  Fully supported. The default object type for honk.
Article
  Fully supported.
Page
  Supported.
Question
  Read only support. Appears similar to a Note.
Event
  Supported. Appears similar to a Note. Can be both created and received, but Invite activities are ignored.
Video
  Limited support.
Audio
  Limited Support.

Honk primarily supports HTML content, not markdown or other formats, with a wide range of permitted HTML tags in object content fields. The following tags are supported.

    a, img, span,
    div, h1, h2, h3, h4, h5, h6, hr,
    table, thead, tbody, tfoot, th, tr, td, colgroup, col,
    p, br, pre, code, blockquote, q,
    caption, kbd, time, wbr, aside,
    ruby, rtc, rb, rt, details, summary,
    samp, mark, ins, dfn, cite, abbr, address,
    strong, em, b, i, s, u, sub, sup, del, tt, small,
    ol, ul, li, dl, dt, dd

The following tag attributes are permitted.

    href, src, alt, colspan, rowspan

The following class names are used for syntax highlighting code blocks.

    kw, bi, st, nm, tp, op, cm, al, dl

## ACTIVITIES

The following activities are supported.

Create
  Fully supported.
Announce
  Supported with share semantics.
Read
  Supported. Primarily used to acknowledge replies and complete threads. Can be interpreted to mean reply is approved, if not endorsed.
Add
  Works with collections.
Follow
  Supported. Can follow both actors and collections.
Update
  Supported. Honk sends and receives Update activities.
Delete
  Does what it can.
Like
  Don't be ridiculous.
EmojiReact
  Be ridiculous.

## METADATA

The following additional object types are supported, typically as tag or attachment.

Mention
  Pretty @ machine.
Emoji
  Inline text :emoji: with image replacement.
Place
  Included as a location. Supports name, url, latitude, and longitude.
Document
  Plain text and images in jpeg, gif, png, and webp formats are supported. Other formats are linked to origin.

The replies array will be populated with a list of acknowledged replies.

## EXTENSIONS

Honk also supports a Ping activity and will respond with a Pong activity. This is useful for debugging networking connectivity issues without visible side effects. See ping.txt for details.

## SECURITY

Honk uses http signatures.

## WEBFINGER

Honk implements the webfinger end point and will use it for @mention resolution. It is not required for federation.

## LD-JSON

Not really.

# SEE ALSO

intro(1), honk(1)

# STANDARDS

ActivityPub

Activity Vocabulary

# CAVEATS

The ActivityPub standard is subject to interpretation, and not all implementations are as enlightened as honk.

August 13, 2024 | macOS 14.5