{"slug": "sil-a-semantic-interface-layer-for-web-applications-and-ai-agents", "title": "SIL: A semantic interface layer for web applications and AI agents", "summary": "The Semantic Interface Layer (SIL) v1.1.0, an open specification for providing AI agents with a direct semantic interface to web applications, is now defined as an extension of the standalone Semantic Text Format (STF) core specification, published at github.com/ais-space/stf. SIL adds a structured textual representation of application state, objects, relationships, navigation, capabilities, and actions, allowing agents to understand an application's structure and meaning without reverse-engineering presentation artifacts, while preserving the human interface.", "body_md": "**A text-based interface protocol for intelligent agents.**\n\nSIL (Semantic Interface Layer) is an open specification for providing AI agents with a direct, semantic interface to web applications.\n\nA conventional web application is primarily designed for human interaction. Its interface exposes information through visual layout, navigation, controls, client-side behavior, and other presentation mechanisms. An agent can use that interface, but often has to reconstruct the application's structure and meaning from those presentation artifacts.\n\nSIL adds another interface to the same application: a structured textual representation of its application state, available objects, relationships, navigation, capabilities, and actions.\n\n**The human interface remains. SIL does not replace it.**\n\nThe goal is to give an agent the equivalent of a well-defined interface rather than requiring it to reverse-engineer one.\n\nThe two interfaces can share the same backend, business logic, data, authentication, authorization, and application state.\n\n```\n                    ┌─────────────────────┐\n                    │     Application     │\n                    │                     │\n                    │  business logic     │\n                    │  data & state       │\n                    │  permissions        │\n                    └──────────┬──────────┘\n                               │\n                 ┌─────────────┴─────────────┐\n                 │                           │\n                 ▼                           ▼\n        Human Interface              Semantic Interface\n             HTML                         SIL / STF\n                 │                           │\n                 ▼                           ▼\n             Humans                       Agents\n```\n\nThis is not necessarily duplication of information. It is a separation of presentation according to the capabilities and requirements of the consumer.\n\nAgents can already interact with web pages, APIs, MCP tools, and other interfaces. SIL addresses a different problem:\n\n**How can an agent understand an application itself — its structure, current state, available actions, navigation, and boundaries — without reconstructing that information from presentation-oriented artifacts?**\n\nFor example, an HTML page may contain a button whose meaning is determined by its surrounding elements, styling, JavaScript handlers, application state, and visual context.\n\nA SIL representation can state that meaning directly:\n\n```\nDownloadButton\n    Type: Button\n    Role: PrimaryAction\n    Id: btn_download\n    Caption: Download\n    Actions: Activate\n```\n\nThe difference is not that one contains information and the other does not.\n\nThe difference is **where the interpretation has to happen**.\n\nWith a conventional interface, the agent may have to infer semantics from presentation. With SIL, the application can expose those semantics explicitly.\n\nSIL defines an **application vocabulary and interface protocol** for intelligent agents.\n\nAs of SIL v1.1.0, the underlying syntax and semantic core are no longer defined inline. SIL is now specified as an extension of **STF core** — a separate, standalone specification (Semantic Text Format) published independently at [github.com/ais-space/stf](https://github.com/ais-space/stf).\n\nThe relationship is now:\n\n```\nSTF core (standalone specification)\n ├── syntax (§2)\n ├── semantic model (§3)\n ├── structural security (§4)\n └── data / serialization model (§5, §6)\n\nSIL v1.1.0 (this specification)\n ├── SIL Vocabulary — application extension of STF core (§3)\n ├── Application Vocabulary (§4)\n ├── SIL Protocol — discovery & interaction (§5)\n ├── Interaction Patterns (§6)\n ├── Security-specific guidance (§7)\n ├── Conformance profiles (§8)\n └── Extensions & Future Directions (§9)\n```\n\nSTF core is referenced **normatively, by reference, without version pinning**: any SIL document is, by construction, a valid STF document. When STF core evolves, SIL tracks it at the application layer. STF core is intentionally textual and hierarchical, designed to remain readable by humans while being straightforward for language models to interpret.\n\nThe SIL specification is itself written in STF, making it a self-describing, conformant document rather than merely a document *about* the format.\n\nA SIL-enabled application exposes semantic pages through HTTP.\n\nA typical interaction looks like this:\n\n```\nAgent                       SIL Server\n  │                             │\n  │  GET /revizor.sil           │\n  │────────────────────────────>│\n  │                             │\n  │  STF document               │\n  │<────────────────────────────│\n  │                             │\n  │  POST /revizor.sil          │\n  │  {\"intent\":\"activate\",      │\n  │   \"target\":\"btn_download\"}  │\n  │────────────────────────────>│\n  │                             │\n  │  Updated STF document       │\n  │<────────────────────────────│\n```\n\nThe returned document can contain:\n\n- application context;\n- site navigation;\n- page structure;\n- semantic objects;\n- object state;\n- relationships;\n- available actions;\n- forms and fields;\n- validation information;\n- permissions and interaction constraints;\n- user data boundaries;\n- agent-only application spaces.\n\nThe exact capabilities available depend on the SIL conformance profile implemented by the server.\n\nObjects describe their type, role, state, and available capabilities instead of requiring the agent to infer them from presentation.\n\nSIL is designed for direct interpretation by language models. It does not require task-specific fine-tuning or a vision model merely to understand the application's basic structure.\n\nA SIL response represents the application's current state. It can therefore be used for interaction rather than serving merely as static documentation.\n\nActions are represented explicitly and submitted through the SIL protocol. The agent does not need to synthesize arbitrary JavaScript or reconstruct UI event handlers.\n\nSIL distinguishes application-defined knowledge from user-provided data at the structural level.\n\nThis allows an implementation to establish explicit trust boundaries between information that defines application behavior and information that must be treated as data.\n\nSIL does not claim to make an application inherently secure. Authentication, authorization, validation, transport security, business rules, and implementation-specific security remain the responsibility of the application.\n\nA SIL interface does not have to correspond one-to-one with an HTML page.\n\nAn application can expose **Agent Spaces** that exist specifically for agent interaction and have no human-facing counterpart.\n\nSIL defines conformance profiles so that an implementation can start with a limited read-only interface and add interaction capabilities progressively.\n\nCurrent profiles include:\n\n**Core****Core Read****Forms****Events****Agent Spaces**\n\nFor example:\n\nThis implementation conforms to SIL v1.1.0: Core + Forms + Events.\n\nSIL can be discovered through several mechanisms.\n\nAn implementation may advertise its SIL interface through HTTP `Link`\n\nheaders, HTML `<link>`\n\nelements, the `/.well-known/sil`\n\nendpoint, or other mechanisms defined by the specification.\n\nFor example:\n\n```\nLink: </.sil>; rel=\"sil\"; type=\"text/sil\"\n```\n\nA well-known discovery endpoint may provide information about available SIL resources:\n\n```\nGET /.well-known/sil\n```\n\nOnce an agent enters a SIL interface, `SiteNavigation`\n\ncan provide the application's navigation structure directly within the semantic representation.\n\nDiscovery is optional and implementation-dependent: a site must explicitly provide these mechanisms for an agent to use them.\n\n```\ncurl https://ais-platform.dev/.sil\nhttps://ais-platform.dev/feedback.sil\n```\n\nThis is a SIL-only application space with forms, pagination, and events.\n\n```\ncurl https://raw.githubusercontent.com/ais-space/sil/main/SIL_Open_Specification.sil\n```\n\n| Technology | Primary purpose | Relationship to SIL |\n|---|---|---|\nHTML |\nHuman-facing web interface | SIL provides an additional semantic interface for agents |\nREST APIs |\nProgrammatic access to application resources | SIL can complement APIs by exposing application semantics and interaction |\nMCP |\nStandardized access to tools and resources | SIL and MCP address different layers and can be used together |\nOpenAPI / JSON Schema |\nDescribe APIs and data structures | SIL describes an interactive application and its semantic state |\nStructured data / metadata |\nAdd machine-readable information to documents | SIL provides a complete agent-facing interface rather than isolated metadata |\n\nSIL is therefore not intended to replace HTML, REST, OpenAPI, or MCP.\n\nIt occupies a different layer.\n\nThe canonical specification is:\n\n**SIL v1.1.0**\n\n[SIL_Open_Specification.sil](/ais-space/sil/blob/main/SIL_Open_Specification.sil)— canonical specification in STF[SIL_Concept.md](/ais-space/sil/blob/main/SIL_Concept.md)— conceptual background[grammar/stf.ebnf](/ais-space/sil/blob/main/grammar/stf.ebnf)— formal STF grammar[schema/intent.schema.json](/ais-space/sil/blob/main/schema/intent.schema.json)— JSON Schema for intent requests\n\nThe specification is self-hosting: it is itself represented as a valid STF document.\n\nThe specification originated from a working implementation and was refined through iterative review with multiple AI models.\n\nThe implementation experience preceded the final specification. The specification was then separated from the implementation's architecture, technology stack, and other project-specific details.\n\n```\nsil/\n├── SIL_Open_Specification.sil\n├── SIL_Concept.md\n├── README.md\n├── CHANGELOG.md\n├── ROADMAP.md\n├── LICENSE\n├── LICENSE-CODE\n├── CONTRIBUTING.md\n├── SECURITY.md\n├── CODE_OF_CONDUCT.md\n├── grammar/\n│   └── stf.ebnf\n├── schema/\n│   └── intent.schema.json\n└── examples/\n```\n\nAn implementation may claim conformance to one or more SIL profiles.\n\nThe fundamental SIL protocol:\n\n- semantic document retrieval;\n- STF processing;\n- interaction requests;\n- application-defined security boundaries.\n\nRead-only semantic interfaces.\n\nForm fields, input handling, and validation.\n\nReal-time event delivery.\n\nSIL interfaces without an HTML counterpart.\n\nSee §8 of the specification for the normative conformance requirements.\n\nSIL is not:\n\n- a replacement for HTML;\n- a replacement for REST APIs;\n- a replacement for MCP;\n- a search-engine optimization format;\n- a requirement to duplicate an application's business logic;\n- a claim that language models possess a special biological or \"native\" language;\n- a security mechanism that makes unsafe applications safe automatically.\n\nSIL is an interface layer intended to make an application's semantics directly available to intelligent agents.\n\nThe web has historically been built primarily around human interaction.\n\nSIL explores a simple extension:\n\nIf intelligent agents are going to use the web as users, they should have an interface designed for them too.\n\nHumans can continue using the visual interface.\n\nAgents can use the semantic interface.\n\nBoth can operate on the same application.\n\n**Specification:**[Creative Commons Attribution 4.0 International](/ais-space/sil/blob/main/LICENSE)(CC-BY-4.0)** Reference code, tests, and tooling:**[Apache License 2.0](/ais-space/sil/blob/main/LICENSE-CODE)\n\nImplementations do not inherit these licenses and may be released under other licenses.\n\n**Specification issues:**[GitHub Issues](https://github.com/ais-space/sil/issues)** Security:**[security@ais-platform.dev](mailto:security@ais-platform.dev)** Website:**[ais-platform.dev](https://ais-platform.dev)", "url": "https://wpnews.pro/news/sil-a-semantic-interface-layer-for-web-applications-and-ai-agents", "canonical_source": "https://github.com/ais-space/sil", "published_at": "2026-08-19 10:17:25+00:00", "updated_at": "2026-08-19 10:43:43.781349+00:00", "lang": "en", "topics": ["artificial-intelligence", "ai-agents", "ai-infrastructure", "developer-tools"], "entities": ["Semantic Interface Layer", "Semantic Text Format", "github.com/ais-space/stf"], "alternates": {"html": "https://wpnews.pro/news/sil-a-semantic-interface-layer-for-web-applications-and-ai-agents", "markdown": "https://wpnews.pro/news/sil-a-semantic-interface-layer-for-web-applications-and-ai-agents.md", "text": "https://wpnews.pro/news/sil-a-semantic-interface-layer-for-web-applications-and-ai-agents.txt", "jsonld": "https://wpnews.pro/news/sil-a-semantic-interface-layer-for-web-applications-and-ai-agents.jsonld"}}