Description
Summary We are seeking an experienced AI automation developer to configure and extend the open-source Hermes Agent framework by Nous Research on a Hostinger Ubuntu VPS. The goal is to build a secure, configuration-driven SEO automation system capable of supporting multiple WordPress websites belonging to different and UNRELATED businesses. Initial business examples include: * A local group of medical clinics * A healthcare virtual-staffing company The system must keep each business’s SEO strategy, credentials, analytics, content, brand instructions, WordPress data, and workflow state isolated while reusing the same core automation engine. The system should automate: * SEO research * Keyword research * Keyword clustering * Competitor analysis * Content-gap analysis * Content briefs * Blog article generation * Internal-link recommendations * Metadata recommendations * Image alt-text recommendations * WordPress draft creation * Human approval before publishing * Performance monitoring and content-decay analysis Social-media publishing is not included in this initial project. ## Primary Architecture Requirement The system must use a multi-tenant, configuration-driven architecture. There should be one shared Hermes deployment and one shared SEO automation codebase. However, every business must operate through an isolated tenant configuration or Hermes profile. Each tenant must have separate: * Business identity * Hermes profile or isolated workspace * WordPress URL * WordPress credentials * Google Search Console property * Competitor domains * Keyword database * Content inventory * Internal-link graph * Brand voice * Target audience * Geographic targets * Calls to action * Content rules * Compliance instructions * Approval queue * Workflow history * Audit logs * Generated drafts * Publishing status The architecture must prevent one tenant’s information from being used in another tenant’s workflow. For example, medical-clinic keywords, patient-facing language, internal links, or WordPress credentials must never appear in content created for the virtual-staffing business. ## Shared Components The following components should be reusable across tenants: * Google Search Console connector * DataForSEO connector * WordPress REST API connector * Keyword clustering engine * Competitor-gap workflow * Content-decay workflow * Content-brief generator * Article-drafting workflow * Internal-linking workflow * Metadata workflow * Image alt-text workflow * Telegram approval workflow * Logging and monitoring * OpenRouter model-routing system Business-specific behavior should be controlled through configuration rather than by duplicating the entire codebase. ## Tenant Configuration Each business should be onboarded through a structured configuration file, database record, or administrative form. Actual API keys and passwords must not be stored directly in tenant configuration files. Configuration files should reference credentials stored securely through environment variables or an appropriate secrets-management system. ## Tenant Isolation Requirements Before every workflow begins, the system must establish a tenant context. Before every external API call or WordPress action, the system must verify: 1. Active tenant ID 2. Correct WordPress website 3. Correct WordPress credential reference 4. Correct Google Search Console property 5. Correct keyword and competitor dataset 6. Correct brand and content profile 7. Correct compliance instructions 8. Correct approval queue Every database record must include a tenant identifier. This applies to: * Keywords * Competitors * Search Console records * DataForSEO results * WordPress content * Content briefs * Draft articles * Internal-link recommendations * Media recommendations * Approval requests * Workflow runs * Errors * Audit logs * API-cost records A workflow must fail safely if the tenant cannot be verified. ## Multi-Business SEO Workflow For each tenant, Hermes should be able to run the following independently: ### 1. SEO Research * Retrieve Google Search Console data. * Retrieve DataForSEO data. * Analyze existing WordPress content. * Analyze approved competitor domains. * Identify keyword and content opportunities. ### 2. Keyword Analysis * Collect keyword-volume and SERP information. * Categorize keywords by search intent. * Create topic clusters. * Identify local, commercial, informational, and transactional opportunities where applicable. * Map keywords to existing or proposed pages. * Detect likely keyword cannibalization. ### 3. Competitor and Content-Gap Analysis * Compare the tenant’s website with its approved competitors. * Identify missing topics and entities. * Identify keywords for which competitors rank but the tenant does not. * Prioritize opportunities based on relevance, difficulty, volume, intent, and current site authority. * Keep competitor data isolated by tenant. ### 4. Content Brief and Article Creation * Generate a structured content brief. * Select a primary keyword and supporting terms. * Define search intent. * Recommend headings and frequently asked questions. * Identify relevant internal links. * Generate an original article draft. * Apply the tenant’s business voice, audience, geography, CTA, and compliance rules. * Avoid creating substantially duplicative content. * Save the article as a WordPress draft or pending proposal. ### 5. Human Approval and WordPress Publishing * Send the proposed article to Telegram. * Display the correct business name and destination website. * Allow Approve, Reject, and Request Revision actions. * Verify the tenant again immediately before any WordPress write action. * Create a WordPress draft by default. * Publish live only when that specific action has been approved. * Record the WordPress post ID and final URL. * Prevent duplicate posting. ## Medical and Nonmedical Content Separation The system must use different system prompts, instructions, and approval standards for different industries. ### Medical-Clinic Content Medical content should: * Be educational rather than diagnostic * Avoid individualized treatment recommendations * Avoid guarantees * Avoid unsupported clinical claims * Include appropriate calls to seek professional care * Require human approval before publication * Use local patient-facing language * Avoid inventing provider credentials, services, prices, or insurance participation ### Virtual-Staffing Content Staffing content should: * Address medical and dental practice decision-makers * Use a B2B tone * Focus on operational and staffing problems * Avoid unsupported cost-saving or performance claims * Avoid inventing client results or testimonials * Use the staffing company’s approved service descriptions and calls to action The agent must not transfer the medical clinic’s tone, keywords, calls to action, internal links, or compliance instructions into the staffing company’s content, or vice versa. ## Multi-Tenant Acceptance Tests The project must demonstrate two unrelated business tenants. ### Tenant One: Primary Implementation The first tenant should receive a complete demonstration of: * Google Search Console connection * DataForSEO connection * WordPress connection * Keyword analysis * Competitor-gap analysis * Content brief * Article draft * Telegram approval * WordPress draft creation * Audit logging ### Tenant Two: Architecture Validation The second unrelated tenant should demonstrate: * Separate tenant configuration * Separate WordPress credentials * Separate Google Search Console property or test configuration * Separate competitors and keyword strategy * Separate content instructions * Separate approval request * Successful creation of a business-appropriate WordPress draft The second tenant does not require the same depth of SEO optimization as the primary tenant during the initial project. Its purpose is to prove that the platform can support an unrelated business without copying or mixing data. The developer must also demonstrate that: * A tenant cannot retrieve another tenant’s stored credentials. * A workflow cannot write to the wrong WordPress website. * Medical content instructions are not applied to staffing content. * Keywords and competitors remain separated. * Approval records identify the correct business and website. * Failed tenant verification prevents publishing. ## Revised Out-of-Scope Items The following are not required within the initial project: * Social-media posting * Facebook integration * Instagram integration * LinkedIn integration * Full enterprise SaaS dashboard * Client-facing self-service tenant portal * Billing or subscriptions * Unlimited tenant onboarding * Multi-user enterprise RBAC * Custom mobile application * Fully autonomous publishing without approval * Large-scale proprietary web crawler * Training a custom language model * Real-time continuous crawling * Complete optimization of every additional website The system must be capable of supporting additional tenants, but the initial project only requires full implementation for one tenant and successful architectural validation with one additional unrelated tenant. The freelancer must treat multi-tenant architecture as a core requirement, not as an optional enhancement to be attempted only if hours remain. ## Additional Application Questions Please answer these questions in addition to the other application requirements: 1. How would you design one Hermes deployment to support unrelated businesses? 2. Would you use Hermes profiles, separate processes, tenant namespaces, or a combination? 3. How would you isolate credentials and memory by tenant? 4. How would you ensure a workflow cannot update the wrong WordPress website? 5. How would you structure shared skills versus tenant-specific prompts? 6. How would you tag database records, queues, approvals, and logs by tenant? 7. How would you test cross-tenant data leakage? 8. Can you demonstrate two unrelated tenants within the 120-hour cap?