pub struct ClientHint {
pub name: String,
pub description: Option<String>,
pub category: JobCategory,
pub icon: Option<String>,
}Expand description
Manifest sub-section (#291): marks a job as user-invokable
from the Client App and carries how it presents to the end user.
Parallel to InventoryHint / CheckHint / EmitConfig —
the block’s presence is the opt-in (no separate boolean), and its
required fields (name, category) are enforced by serde at
parse time, so a half-filled catalog entry fails
kanade job create instead of rendering a nameless / tab-less row.
The agent maps this 1:1 into the KLP
UserInvokableJob wire shape
that jobs.list returns; the Client App renders one row per job in
the tab named by category.
Fields§
§name: StringEnd-user-facing title for the job row. The operator-internal
Manifest::id slug is rarely what an end user should read, so
this is required (and validated non-empty by
Manifest::validate). Maps to UserInvokableJob::display_name.
description: Option<String>Optional one-line subtitle under name in the Client App.
Distinct from the operator-facing top-level
Manifest::description — this one is written for the end
user. Maps to UserInvokableJob::display_description.
category: JobCategoryWhich Client App tab the job lives in (software_update →
アップデート, troubleshoot → 困ったとき, catalog → software
catalog). Required — without it the agent can’t place the job
in a tab.
icon: Option<String>Optional icon hint for the job row — a lucide-react icon name
or a data: URL. None ⇒ the Client App falls back to the
category’s default icon. Surfaced verbatim in
jobs.list[].icon.
Trait Implementations§
Source§impl Clone for ClientHint
impl Clone for ClientHint
Source§fn clone(&self) -> ClientHint
fn clone(&self) -> ClientHint
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ClientHint
impl Debug for ClientHint
Source§impl<'de> Deserialize<'de> for ClientHint
impl<'de> Deserialize<'de> for ClientHint
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for ClientHint
impl JsonSchema for ClientHint
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read more